apt -y install mercurial # 安装版本控制
add-apt-repository ppa:openjdk-r/ppa
apt-get update
apt-get -y install openjdk-7-jre
apt-get -y install openjdk-7-jdk # 安装jdk7 编译jdk8 需要jdk7
apt-get -y install libx11-dev libxext-dev libxrender-dev libxtst-dev libxt-dev libcups2-dev libfreetype6-dev libasound2-dev ccache # 安装需要的依赖
# 编译的话需要设置若干参数 建议放到一个单独的sh文件去执行
export LANG=C
export PATH="/usr/lib/jvm/java-7-openjdk-amd64/bin:${PATH}"
export USE_CCACHE=1
ccache -M 10G
安装完版本控制 就开始寻找jdk的版本 http://hg.openjdk.java.net
比如说使用 http://hg.openjdk.java.net/jdk8u/jdk8u60/
hg clone http://hg.openjdk.java.net/jdk8u/jdk8u60/
cd 进入 jdk 目录
bash ./get_source.sh # 下载源代码
echo export USE_CCACHE=1 >> ~/.bashrc # 写入ccache的缓存
ccache -M 10G # 我设置为10g缓存
bash configure
开始编译
make all
# 如果报错 可以试试 make clean
jdk的bin目录就是当前目录中的
./build/linux-x86_64-normal-server-release/jdk/bin
至此编译完成