Ubuntu安装jdk8
1. 从oracle网站上下载jdk8 Linux 32位的gz压缩包(jdk-8u101-linux-i586.tar.gz)
2. 解压
sudo tar -zxvf jdk-8u101-linux-i586.tar.gz -C /bin
3. 配置jdk环境变量
vim ~/.bashrc
按shit+g在文件末尾加入以下内容
export JAVA_HOME=/bin/jdk1.8.0_101
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
退出保存,并运行下面的命令使之生效
source ~/.bashrc
4. 将新安装的jdk加入可用的jdk列表
sudo update-alternatives --install /usr/bin/java java /bin/jdk1.8.0_101/bin/java 300
sudo update-alternatives --install /usr/bin/javac javac /bin/jdk1.8.0_101/bin/javac 300
上面差不多是建立链接的作用,/usr/bin/java是链接文件,java/javac可以理解为链接项,后面的路径是前面链接文件指向的对象,最后
的数值表示优先级(优先级表示当选择当前active jdk的模式是auto时,会根据jdk的优先级来决定将哪个jdk设置为active jdk)。
5. 配置active jdk
sudo update-alternatives --config java
There are 3 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-6-openjdk-i386/jre/bin/java 1061 auto mode
* 1 /bin/jdk1.8.0_101/bin/java 300 manual mode
2 /usr/lib/jvm/java-6-openjdk-i386/jre/bin/java 1061 manual mode
3 /usr/lib/jvm/java-7-openjdk-i386/jre/bin/java 1051 manual mode
Press enter to keep the current choice[*], or type selection number:
上面的结果中有4个不同的jdk可供使用(其中0和2的版本是一样的,只是模式不同),可以根据需要设置合适的jdk为active jdk。
有*的为当前active jdk。输入jdk列表中对应的编号设置active jdk,按回车键不改变当前active jdk设置。
上面的config项是java,还可以是javac、javaws
update-alternatives --config javac
update-alternatives --config javaws
它们的配置和config java配置类似。
另外
A. 通过如下的命令操作可以确定当前active jdk java可执行程序的path
xxx:/projects/yyy/zzz$ which java
/bin/jdk1.8.0_101/bin/java
xxx:/projects/yyy/zzz$ ls /bin/jdk1.8.0_101/bin/java -l
-rwxr-xr-x 1 uucp 143 5730 Jun 22 17:46 /bin/jdk1.8.0_101/bin/java
xxx:/projects/yyy/zzz$ ls -l /bin/jdk1.8.0_101/bin/java
-rwxr-xr-x 1 uucp 143 5730 Jun 22 17:46 /bin/jdk1.8.0_101/bin/java
B. update-alternatives相关的命令
1. 列出系统中可用的不同版本的jdk
update-alternatives --list java
/bin/jdk1.8.0_101/bin/java
/usr/lib/jvm/java-6-openjdk-i386/jre/bin/java
/usr/lib/jvm/java-7-openjdk-i386/jre/bin/java
下面为update-alternatives可用的命令
--admindir --auto --display --install --remove --verbose
--altdir --config --help --quiet --set --version
C. jdk(oracle jdk)和open jdk是不同的jdk,如果Ubuntu上安装的jdk是open jdk,在编译Android时,有可能会报jdk版本错误的error。
参考blog
Ubuntu 14.04下搭建 Android 开发环境(1) -JDK安装
http://www.cnblogs.com/fangbo/p/3941816.html
Linux中的update-alternatives命令详解
http://jingyan.baidu.com/article/ff42efa92a64c9c19e2202d2.html