Android實戰技巧之八:Ubuntu下切換JDK版本,androidjdk
Android L之後推薦使用JDK7編譯器,這是自然發展規律,就像是4年前編譯Android 1.6需要使用JDK5一樣。
多版本JDK是可以共存的,只需要使用update-alternatives工具就可以隨時將它們切換。下面描述安裝openjdk和oracle jdk(對不住了sun)以及切換版本的過程。
一、安裝openjdk7
$ sudo apt-get update$ sudo apt-get install openjdk-7-jdk
安裝完成後找到其安裝路徑:
$ dpkg -L openjdk-7-jdk/./usr/usr/lib/usr/lib/jvm/usr/lib/jvm/java-7-openjdk-amd64$ ls /usr/lib/jvm/java-7-openjdk-amd64/ASSEMBLY_EXCEPTION bin docs include jre lib man src.zip THIRD_PARTY_README
二、切換java版本
$ sudo update-alternatives --config javaThere are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status------------------------------------------------------------* 0 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 auto mode 1 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 manual mode 2 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1051 manual modePress enter to keep the current choice[*], or type selection number: 2update-alternatives: using /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java to provide /usr/bin/java (java) in manual mode.$ java -versionjava version "1.7.0_65"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的一個工具 + 生產力)。
$ sudo update-alternatives --install /usr/bin/java java /opt/jdk/jdk1.7.0_71/bin/java 700$ sudo update-alternatives --install /usr/bin/javac javac /opt/jdk/jdk1.7.0_71/bin/javac 700$ sudo update-alternatives --install /usr/bin/jar jar /opt/jdk/jdk1.7.0_71/bin/jar 700
700是優先順序數值,我這裡隨便使用了一個數。
查看一下我們的config:
$ sudo update-alternatives --config javaThere are 3 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status------------------------------------------------------------ 0 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 auto mode 1 /opt/jdk/jdk1.7.0_71/bin/java 700 manual mode 2 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 manual mode* 3 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1051 manual modePress enter to keep the current choice[*], or type selection number: 1update-alternatives: using /opt/jdk/jdk1.7.0_71/bin/java to provide /usr/bin/java (java) in manual mode
驗證是否切換成功:
$ java -versionjava version "1.7.0_71"Java(TM) SE Runtime Environment (build 1.7.0_71-b14)Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)
同樣的,當我們需要切換到低版本時選擇2或者安裝oracle jdk6並將其納入管理。這樣就可以不用通過手動修改環境的方式來靈活切換JDK的版本了。