[Linux] 如何在 Ubuntu 14.04 中安裝 Oracle/Open JDK

這次要教大家如何在 Linux(Ubuntu) 中安裝 JDK,不管是使用 Open JDK,或是 Oracle JDK,都是用喔!這樣大家就可以在 UTF-8 環境中開發自己的軟體了呢!(相信我,你總會遇到 5C 錯誤 的) 這篇文章是參考 三秒緯,所撰寫的《Ubuntu 12.04 安裝 Oracle Java 7》稍作修改而成,因為這篇文章幫助我很多,希望能讓更多人看見!

Open JDK

sudo apt-get update

▲ 首先先更新一下套件庫的資訊,確保我們下載的是最新版的 JDK

sudo apt-get install default-jdk

▲ 為了避免其他可能的問題,我們直接使用官方建議的套件(Default)

所有會安裝的套件(以 Ubuntu 14.04 為例)

ca-certificates-java default-jdk default-jre default-jre-headless
fonts-dejavu-extra java-common libatk-wrapper-java libatk-wrapper-java-jni
libgconf2-4 libgif4 libice-dev libpthread-stubs0-dev libsm-dev libx11-dev
libx11-doc libxau-dev libxcb1-dev libxdmcp-dev libxt-dev openjdk-7-jdk
openjdk-7-jre openjdk-7-jre-headless tzdata-java x11proto-core-dev
x11proto-input-dev x11proto-kb-dev xorg-sgml-doctools xtrans-dev
java -version

▲ 為了測試一下是否安裝好了,我們請 Java 顯示目前的版本

它應該看起來像這樣:

$ java -version
java version "1.7.0_75"
OpenJDK Runtime Environment (IcedTea 2.5.4) (7u75-2.5.4-1~trusty1)
OpenJDK 64-Bit Server VM (build 24.75-b04, mixed mode)
javac -version

▲ 為了測試一下是否安裝好了,我們請 Java Compiler 顯示目前的版本

它應該看起來像這樣:

$ javac -version
javac 1.7.0_75

 

Open JDK(JRE Only)

sudo apt-get update

▲ 首先先更新一下套件庫的資訊,確保我們下載的是最新版的 JDK

sudo apt-get install default-jre

▲ 為了避免其他可能的問題,我們直接使用官方建議的套件(Default)

所有會安裝的套件(以 Ubuntu 14.04 為例)

ca-certificates-java default-jre default-jre-headless libatk-wrapper-java
libatk-wrapper-java-jni openjdk-7-jre openjdk-7-jre-headless
java -version

▲ 為了測試一下是否安裝好了,我們請 Java 顯示目前的版本

它應該看起來像這樣:

$ java -version
java version "1.7.0_75"
OpenJDK Runtime Environment (IcedTea 2.5.4) (7u75-2.5.4-1~trusty1)
OpenJDK 64-Bit Server VM (build 24.75-b04, mixed mode)

 

Oracle Java

sudo add-apt-repository ppa:webupd8team/java

▲ 以自訂方式加入包含 Oracle Java 的套件來源

sudo apt-get update

▲更新一下,讓套件庫讀取我們剛加入的來源 既然選擇安裝 Oracle Java 想必大家一定跟小獅一樣,充滿了好奇心,所以在安裝之前,我們再來玩一點東西吧! 首先,我們先以如下指定於 快取(Cache) 中 搜尋(Search) 所有 Oracle Java 的東西!

apt-cache search oracle-java

注意到不一樣的地方了嗎?沒錯,我們沒有使用 sudo 切換權限,因為 apt-cache 指令和 apt-get 不一樣,不會對系統造成傷害,所以無需特殊權限來執行它! 以我自己為例,會印出如下的內容:

$ apt-cache search oracle-java
oracle-jdk7-installer - Oracle JDK7 Installer meta package
oracle-java7-installer - Oracle Java(TM) Development Kit (JDK) 7
oracle-java6-installer - Oracle Java(TM) Development Kit (JDK) 6
oracle-java8-installer - Oracle Java(TM) Development Kit (JDK) 8
oracle-java7-set-default - Set Oracle JDK 7 as default Java
oracle-java6-set-default - Set Oracle JDK 6 as default Java
oracle-java8-set-default - Set Oracle JDK 8 as default Java
oracle-java7-unlimited-jce-policy - Unlimited JCE Policy for Oracle Java 7
oracle-java8-unlimited-jce-policy - Unlimited JCE Policy for Oracle Java 8

特別標示出來的部分就是我們這次的重點,分別有 Java 6、7、8 三個版本,我們可以依自己需求安裝!(以下以 Java 7 為例)

sudo apt-get install oracle-java7-installer

▲ 安裝 Oracle Java 7(若要安裝 Java 8 請改為 oracle-java8-installer) ▲ 安裝程式會要求你必須同意使用者授權條款 ▲ 按下 <是> 同意使用者授權條款後繼續安裝

java -version

▲ 同樣,為了測試一下是否安裝好了,我們請 Java 顯示目前的版本

它應該看起來像這樣:

$ java -version
java version "1.7.0_76"
Java(TM) SE Runtime Environment (build 1.7.0_76-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.76-b04, mixed mode)

▲ 為了測試一下是否安裝好了,我們請 Java Compiler 顯示目前的版本

它應該看起來像這樣:

$ javac -version
javac 1.7.0_76

Oracle JRE?痾~這我就不知道了(逃~)

同場加映:如何在多個版本的 Java 中切換

sudo update-alternatives --config java

▲使用這個指令,你就可以在已安裝的多個 Java 版本中選擇一個做為預設值

$ sudo update-alternatives --config java
There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                     Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-8-oracle/jre/bin/java   2         auto mode
  1            /usr/lib/jvm/java-7-oracle/jre/bin/java   1         manual mode
  2            /usr/lib/jvm/java-8-oracle/jre/bin/java   2         manual mode

Press enter to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/lib/jvm/java-7-oracle/jre/bin/java to provide /usr/bin/java (java) in manual mode

$ sudo update-alternatives --config java
There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                     Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-8-oracle/jre/bin/java   2         auto mode
* 1            /usr/lib/jvm/java-7-oracle/jre/bin/java   1         manual mode
  2            /usr/lib/jvm/java-8-oracle/jre/bin/java   2         manual mode

Press enter to keep the current choice[*], or type selection number:

▲ 使用範例,以數字選擇你要的版本

參考資料

發表迴響