Ubuntu16 编译openJDK8u

本文详细介绍了在Ubuntu16系统上从源码编译openJDK8u的步骤,包括获取源码、准备Bootstrap JDK、安装依赖、配置环境变量、执行编译等关键环节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Ubuntu16 编译openJDK8u

1、得到openJDK8u

hg clone http://hg.openjdk.java.net/jdk8u/jdk8u-dev
cd jdk8u-dev
chmod 755 get_source.sh 
./get_source.sh 

2、得到bootstrap JDK 用来编译openjdk的java部分 下载oracle JDK1.8 一定要有!!!!
下载后解压到/usr/local/java中

3、安装依赖:

sudo apt-get install build-essential gawk m4 libasound2-dev libcups2-dev libxrender-dev xorg-dev xutils-dev x11proto-print-dev binutils  libmotif-dev ant

4、执行configure.sh脚本

bash ./configure --with-target-bits=64 --with-boot-jdk=/usr/local/java/ --with-debug-level=slowdebug --enable-debug-symbols ZIP_DEBUGINFO_FILES=0

5、设置环境变量(可有可无××)

#! /bin/bash
#设置语言
export LANG=C
#Bootstrap JDK的安装路径,必须设置
export ALT_BOOTDIR=/usr/local/java
#允许自动下载依赖
export ALLOW_DOWNLOADING=true
#并行编译的线数,设置和cpu的数量一致即可
export HOTSPOT_BUILD_JOBS=2
export ALT_PARALLEL_COMPILE_JOBS=2
#比较本次build出来的映像与先前版本的差异,这对我们来说没有意义
export SKIP_COMPARE_IMAGES=true
#使用预编译头文件,不加这个编译会更慢一些
export USE_PRECOMPILED_HEADER=true
#指定要编译的内容
export BUILD_LANGTOOLS=true
export BUILD_HOTSPOT=true
export BUILD_JDK=true
export BUILD_JAXP=false
export BUILD_JAXWS=false
export BUILD_CORBA=false
#要编译的版本
#export SKIP_DEBUG_BUILD=false
#export SKIP_FASTDEBUG_BUILD=true
export DEBUG_NAME=debug
#可以避开javaws和浏览器Java插件之类的部分build
BUILD_DEPLOY=false
#设置成false就不会build出包装包,因为包装包里有些奇怪的依赖
#但是即使不build出它也已经能得到完整的JDK映像,所以还是别build它好了
BUILD_INSTALL=false
#编译结果存放的路径
export ALT_OUTPUTDIR=/openjdk8u(自己随意定义)
#卸载环境变量,避免诡异的事情发生
unset JAVA_HOME
unset JRE_HOME
unset CLASSPATH
unset JAVA_OPTS
make 2>&1 | tee $ALT_OUTPUTDIR/build.log

注意: export ALT_BOOTDIR=/usr/local/java 一定要用Oracle JDK的解压路径
可以将这个配置文件写到/etc/profile.d中 sudo vim /etc/profile.d/openjdk.sh 写完后 source /etc/profile就可以完成配置

6、make all 进行编译

7、编译完成的文件可能不在ALT_OUTPUTDIR=/opendjdk8u(很奇怪),这时候去jdk8u-dev中的build里去找 可能是release,fastdebug,slowdebug,看–with-debug-level=slowdebug 的定义

总结:

编译openjdk7u不行,出现ant版本低于1.7.1无法解决,重新安装ant(apt-get 或 官网下载安装),配置ant路径都不行 放弃
编译openjdk8u,开始忘记下载Bootstrap JDK# 欢迎使用Markdown编辑器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值