Ubuntu 16.04上安装openjdk7--编译Android6.0使用
问题背景:
需要在编译服务器上编译android 6.0代码。这个版本需要使用openjdk7。
参考来自官网的信息:https://source.android.com/docs/setup/start/older-versions?hl=zh-cn#jdk
官网里OpenJDK7链接指向的是oracle官网,JDK7的下载地址在这里:https://www.oracle.com/java/technologies/javase/javase7-archive-downloads.html,实测下来不可用。
因为oracle官网下载下来的JDK版本信息为:
$ ./java -version java version "1.7.0_80" Java(TM) SE Runtime Environment (build 1.7.0_80-b15) Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
这个版本信息不符合编译需求。编译时在版本检查阶段就过不了。
编译服务器系统信息:
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.7 LTS"
所以问题变成了这个需求:Ubuntu 16.04上安装OPENJDK7
openjdk7下载:
链接: https://pan.baidu.com/s/1CvktZWSk8POueX3KJPDX7w 提取码: ff4u
解压缩:
bzip2 -d java-1.7.0-openjdk-amd64.tar.bz2
tar -xf java-1.7.0-openjdk-amd64.tar
配置:
~/.bashrc中增加:
export JAVA_HOME=~/java-7-openjdk-amd64 function switchjdk7 { echo "switch to java 1.7" export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=${JAVA_HOME}/lib:${JAVA_HOME}/jre/lib java -version }
更新使之生效,并在需要时切换版本信息:
source ~/.bashrc
switchjdk7
switch to java 1.7 java version "1.7.0_95" OpenJDK Runtime Environment (IcedTea 2.6.4) (7u95-2.6.4-3) OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode)
正确JDK版本信息:
java version "1.7.0_95" OpenJDK Runtime Environment (IcedTea 2.6.4) (7u95-2.6.4-3) OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode)