OpenJDK和Oracle Java有兩個主要的實現,幾乎沒有區別,只是Oracle Java有一些額外的商業功能。
現在Oracle Java開始收費了。。。官網下載需要登錄。
安裝OpenJDK
OpenJDK 10,Java平台的開源實現是Ubuntu 18.04中的默認Java開發和運行時。 一旦OpenJDK 11達到GA,它將成為Ubuntu 18.04的默認版本。
安裝OpenJDK非常簡單直接。
安裝OpenJDK 10 JDK
sudo apt install default-jdk
安裝OpenJDK 8 JDK
sudo apt install openjdk-8-jdk
安裝Oracle Java
在本節中,我們將完成從WebUpd8存儲庫安裝Oracle Java的步驟。 WebUpd8軟件包會自動為我們下載並安裝Oracle JDK。
為了能夠使用add-apt-repository命令添加新的存儲庫,首先我們需要安裝software-properties-common軟件包。
sudo apt install software-properties-common dirmngr
現在我們可以添加WebUpd8存儲庫並安裝Oracle Java:
sudo add-apt-repository ppa:webupd8team/java sudo apt update
安裝Oracle Java 8(去年Oracle停止維護java8 所以現在無法通過該方法安裝)
sudo apt-get install oracle-java8-installer
安裝程序會要求您接受Oracle許可條款。 要安裝軟件包,您需要接受這些條件。
所以這種方式還是推薦安裝Oracle Java 11、12
sudo add-apt-repository ppa:linuxuprising/java sudo apt-get update sudo apt-get install oracle-java11-installer sudo apt-get install oracle-java12-installer
非要安裝Oracle Java 8的話
手動下載壓縮包安裝oracle Java JDK
1、前往oracle Java官網下載JDK(http://www.oracle.com/technetwork/java/javase/downloads/index.html)現在Oracle Java開始收費了。。。官網下載需要登錄。所以(https://github.com/frekele/oracle-java/releases)你懂的
解壓縮到指定目錄(以jdk-8u221-linux-x64.tar.gz為例)
創建目錄:
sudo mkdir /usr/lib/java
解壓縮到該目錄:
sudo tar -zxvf jdk-8u212-linux-x64.tar.gz -C /usr/lib/java
修改環境變量:
sudo gedit ~/.bashrc
在文件末尾追加下面內容:
#set oracle jdk environment export JAVA_HOME=/usr/lib/java/jdk1.8.0_212 ## 這里要注意目錄要換成自己解壓的jdk 目錄 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH
使環境變量馬上生效:
source ~/.bashrc
系統注冊此jdk(300為優先級)
sudo update-alternatives --install /usr/bin/java java /usr/lib/java/jdk1.8.0_212/bin/java 300
設置默認版本
我們可以檢查我們的默認Java版本:
java -version
輸出:
openjdk version "10.0.1" 2019-08-24 OpenJDK Runtime Environment (build 10.0.1+10-Ubuntu-3ubuntu1) OpenJDK 64-Bit Server VM (build 10.0.1+10-Ubuntu-3ubuntu1, mixed mode)
如果我們在服務器上安裝了多個Java版本,我們可以使用update-alternatives系統更改默認版本:
sudo update-alternatives --config java
輸出:
有 3 個候選項可用於替換 java (提供 /usr/bin/java)。 選擇 路徑 優先級 狀態 ------------------------------------------------------------ * 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 自動模式 1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 手動模式 2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 手動模式 3 /usr/lib/jvm/java-9-openjdk-amd64/bin/java 1091 手動模式 要維持當前值[*]請按<回車鍵>,或者鍵入選擇的編號: 在出現提示時輸入號碼並按Enter鍵。