源码编译openjdk 8
最近在看«深入理解Java虚拟机-JVM高级特性与最佳实践»这本书,里面有讲解openjdk 7的源码编译方法,比较喜欢尝鲜的我决定编译一下openjdk 8。 阅读了openjdk 8的Build README后发现,编译方式相比openjdk 7来说简单了许多,与openjdk 1.7编译的区别:不再依赖ant和ATL_*环境变量;废话不多说,基本步骤如下:
- 安装工具和依赖
sudo apt-get install mercurial build-essential openjdk-7 #alsa freetype cups xrender
# 有些依赖即使没装,configure时根据提示逐个安装即可
- 下载源码
hg clone http://hg.openjdk.java.net/jdk8/jdk8
cd jdk8
bash ./get_source.sh
- gnu老式编译方法
export LANG=C
./configure # --help=short
make # all / all-conf / images / install / clean / dist-clean
make image # 创建j2sdk和j2re
# 编译的结果在build/linux-x86_64-normal-server-release/images/
- 测试(optional), 依赖jtreg
cd test && make PRODUCT_HOME=`pwd`/../build/*/images/j2sdk-image all