本机环境:虚拟机 3.10.0-1160.el7.x86_64 (linux系统 x86)

  1. 准备工作

需要准备个需要准备一个boot jdk,也就是前导jdk,这个jdk是用来引导编译的,比如我们要编译jdk8,那这时候系统里要预先安装一个jdk7。

  1. 安装必要的工具集

yum install -y zip
yum groupinstall -y "Development Tools"
yum install -y libbXtst-devel libXt-devel libXrender-devel
yum install -y cups-devel
yum install -y alsa-lib-devel
yum install -y freetype-devel


3、获取openjdk源码

从github镜像: https://github.com/openjdk/jdk

git clone https://github.com/openjdk/jdk
##拉取后切换分支
cd jdk
##tag 标记 jdk8-b120,github上8版本最新的tag
git checkout jdk8-b120,github上8版本最新的tag

4. 编译

##jdk是刚拉取的源码根目录
cd jdk
##设置configure执行权限
chmod +x configure执行权限
##设置编译参数
export LANG=C
export USE_PRECOMPILED_HEADER=true
unset JAVA_HOME
unset CLASSPATH
unset JAVA_TOOL_OPTIONS
##configure检查(注意前导jdk7必须提前安装)
bash ./configure --with-target-bits=64 --with-boot-jdk=/usr/local/jdk1.7.0_79   --
with-debug-level=slowdebug --enable-debug-symbols ZIP_DEBUGINFO_FILES=0

最后这个提示可以无视,可以直接编译了。

5.编译

##检查无误,开始编译
make all CONF=linux-x86_64-normal-server-slowdebug ZIP_DEBUGINFO_FILES=0

如果出现如上图示就表明已经编译成功!

检测下我们自己编译的jdk是不是真的成功了,进入到bin目录下,如下图:

执行:./java -version,发现已经编译成功了!

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐