背景
因为之前一直在研究jdk源码,但是基于自己比较懒的缘故,一直没有手动编译过jdk源码,也就只是看看书本上的东西,似懂非懂的看懂了也就草草了事了,这次终于下定决心编译一把openJDK8的源码
基础环境
macos High Sierra 10.13.1
openJDK 8
编译
直接找到 http://hg.openjdk.java.net/ ,执行以下命令
# 安装mercurial
brew install mercurial
# clone openJDK源码
hg clone http://hg.openjdk.java.net/jdk8/jdk8 openjdk8
当然在git JDK也有对应的JDK源码,git clone之后checkout到对应的tag上进行编译也是可以的
git clone https://github.com/openjdk/jdk
git checkout -b openjdk8 jdk8-b80
注意如果是用hg clone的方式我们还得执行sh ./get_source.sh命令来获取额外的文件,对于Mercurial和Git的区别,网上一大堆,网友可以自行查找,操作方式可以参考hg git 操作
我们这里选择hg clone的方式,执行
cd openjdk8 && sh ./get_source.sh
安装依赖
brew install freetype
Running Configure
bash ./configure --with-debug-level=slowdebug --with-boot-jdk=/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home --with-freetype-include=/usr/local/Cellar/freetype/2.10.4/include/freetype2 --with-freetype-lib=/usr/local/Cellar/freetype/2.10.4/lib

本文详述了如何在macOS High Sierra上从源码编译OpenJDK8的过程,包括安装Mercurial、获取源码、配置环境、解决编译过程中遇到的问题,如修改源文件、安装依赖、运行configure和make等。最终成功编译并验证了OpenJDK8的运行。
最低0.47元/天 解锁文章
441

被折叠的 条评论
为什么被折叠?



