Docker 编译 OpenJDK8
前言
如果未安装 Docker,可以参考 安装 Docker
Docker 操作
拉取镜像
docker pull bolingcavalry/bolingcavalryopenjdk
启动容器
docker run --name=compilejdk -idt bolingcavalry/bolingcavalryopenjdk
-i
:让 Docker 分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上-t
:让容器的标准输入保持打开-d
:守护态运行--name
:为容器指定名称
进入容器
docker exec -it compilejdk /bin/bash
检查依赖
进入目录
cd /usr/local/openjdk
检查依赖
./configure --with-debug-level=slowdebug
====================================================
A new configuration has been successfully created in
/usr/local/openjdk/build/linux-x86_64-normal-server-slowdebug
using configure arguments '--with-debug-level=slowdebug'.
Configuration summary:
* Debug level: slowdebug
* JDK variant: normal
* JVM variants: server
* OpenJDK target: OS: linux, CPU architecture: x86, address length: 64
Tools summary:
* Boot JDK: java version "1.7.0_71" Java(TM) SE Runtime Environment (build 1.7.0_71-b14) Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode) (at /usr/java/jdk1.7.0_71)
* C Compiler: gcc (GCC) 4.8.5 20150623 (Red Hat-11) version 4.8.5-11) (at /usr/bin/gcc)
* C++ Compiler: g++ (GCC) 4.8.5 20150623 (Red Hat-11) version 4.8.5-11) (at /usr/bin/g++)
Build performance summary:
* Cores to use: 1
* Memory limit: 962 MB
* ccache status: not installed (consider installing)
--with-debug-level=slowdebug
:指定可以生成最多的调试信息
进行编译
编译
make all ZIP_DEBUGINFO_FILES=0 DISABLE_HOTSPOT_OS_VERSION_CHECK=OK CONF=linux-x86_64-normal-server-slowdebug
----- Build times -------
Start 2019-10-12 02:27:48
End 2019-10-12 02:48:10
00:00:40 corba
00:00:36 demos
00:02:38 docs
00:05:16 hotspot
00:00:50 images
00:00:22 jaxp
00:00:34 jaxws
00:08:31 jdk
00:00:39 langtools
00:00:16 nashorn
00:20:22 TOTAL
-------------------------
Finished building OpenJDK for target 'all'
检查和验证
cd /usr/local/openjdk/build/linux-x86_64-normal-server-slowdebug/jdk/bin &&
./java -version
====================================================
openjdk version "1.8.0-internal-debug"
OpenJDK Runtime Environment (build 1.8.0-internal-debug-_2019_10_12_02_27-b00)
OpenJDK 64-Bit Server VM (build 25.0-b70-debug, mixed mode)
参考博客:极速体验编译openjdk8