Ubuntu下多版本JDK切换

origin: http://blog.csdn.net/lincyang/article/details/42024565

Android L之后推荐使用JDK7编译程序,这是自然发展规律,就像是4年前编译Android 1.6需要使用JDK5一样。

多版本JDK是可以共存的,只需要使用update-alternatives工具就可以随时将它们切换。下面描述安装openjdk和Oracle jdk(对不住了sun)以及切换版本的过程。

一、安装openjdk7
  1. $ sudo apt-get update  
  2. $ sudo apt-get install openjdk-7-jdk  
安装完成后找到其安装路径:
  1. $ dpkg -L openjdk-7-jdk  
  2. /.  
  3. /usr  
  4. /usr/lib  
  5. /usr/lib/jvm  
  6. /usr/lib/jvm/java-7-openjdk-amd64  
  7.   
  8. $ ls /usr/lib/jvm/java-7-openjdk-amd64/  
  9. ASSEMBLY_EXCEPTION  bin  docs  include  jre  lib  man  src.zip  THIRD_PARTY_README  
二、切换java版本
  1. $ sudo update-alternatives --config java  
  2. There are 2 choices for the alternative java (providing /usr/bin/java).  
  3.   
  4.   Selection    Path                                            Priority   Status  
  5. ------------------------------------------------------------  
  6. * 0            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      auto mode  
  7.   1            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      manual mode  
  8.   2            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1051      manual mode  
  9.   
  10. Press enter to keep the current choice[*], or type selection number: 2  
  11. update-alternatives: using /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java to provide /usr/bin/java (java) in manual mode.  
  12.   
  13. $ java -version  
  14. java version "1.7.0_65"  
  15. OpenJDK Runtime Environment (IcedTea 2.5.3) (7u71-2.5.3-0ubuntu0.12.04.1)  
三、安装Oracle jdk
使用Android Studio做开发,启动IDE就提示:
OpenJDK shows intermittent performance and UI issues. We recommend using the Oracle JRE/JDK.
看来还是要安装Oracle的JDK了,因为ubuntu软件源中没有此JDK,所以不能像安装openjdk一样使用apt-get工具。
那么我们还是要去 官网下载jdk7

按照以往的惯例,我将这些软件放在/opt目录下。将JDK解压到新建目录jdk下。
用update-alternatives工具来添加java可选配置项(这是一个dpkg的一个实用工具)。
  1. $ sudo update-alternatives --install /usr/bin/java java /opt/jdk/jdk1.7.0_71/bin/java 700  
  2. $ sudo update-alternatives --install /usr/bin/javac javac /opt/jdk/jdk1.7.0_71/bin/javac 700  
  3. $ sudo update-alternatives --install /usr/bin/jar jar /opt/jdk/jdk1.7.0_71/bin/jar 700  
700是优先级数值,我这里随便使用了一个数。
查看一下我们的config:
  1. $ sudo update-alternatives --config java  
  2. There are 3 choices for the alternative java (providing /usr/bin/java).  
  3.   
  4.   Selection    Path                                            Priority   Status  
  5. ------------------------------------------------------------  
  6.   0            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      auto mode  
  7.   1            /opt/jdk/jdk1.7.0_71/bin/java                    700       manual mode  
  8.   2            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      manual mode  
  9. * 3            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1051      manual mode  
  10.   
  11. Press enter to keep the current choice[*], or type selection number: 1  
  12. update-alternatives: using /opt/jdk/jdk1.7.0_71/bin/java to provide /usr/bin/java (java) in manual mode  

验证是否切换成功:

  1. $ java -version  
  2. java version "1.7.0_71"  
  3. Java(TM) SE Runtime Environment (build 1.7.0_71-b14)  
  4. Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)  

同样的,当我们需要切换到低版本时选择2或者安装oracle jdk6并将其纳入管理。这样就可以不用通过手动修改环境的方式来灵活切换JDK的版本了。
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值