Java 一種非常流行的面向?qū)ο蟮木幊陶Z言掰邢,跨平臺運行,可用于編寫桌面應(yīng)用程序昧甘,Web應(yīng)用程序命黔,分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用等等呜呐。
本文介紹如何在 Ubuntu 22.04 上安裝多版本的 Java。
前提條件
1悍募、安裝了 Ubuntu 22.04 系統(tǒng)的服務(wù)器或PC蘑辑,可以購買騰訊VPS或阿里云VPS,或自己安裝個虛擬機搜立。
2以躯、擁有 Ubuntu 22.04 的 root 權(quán)限。
常用的JDK主要包括OpenJDK 和 Oracle JDK 啄踊,它們之前幾乎沒有區(qū)別忧设,功能幾乎相同,主要區(qū)別在于Open JDK是一個開源項目颠通,而Oracle JDK 需要付費許可證或只允許商業(yè)性使用軟件址晕,當(dāng)然Oracle JDK 包含了一些Open JDK無法使用的二外商業(yè)功能。
安裝OpenJDK
默認(rèn) Ubuntu 22.04 存儲庫中包OpenJDK軟件包顿锰,所以我們可以直接運行命令進(jìn)行安裝谨垃。
sudo apt install openjdk-17-jdk
Java有四個長期支持(LTS)版本:8启搂、11、17和21刘陶。Ubuntu 22.04 中的默認(rèn) Java 開發(fā)和運行時設(shè)置為 Java 17胳赌。
如果想安裝其他版本,替換上述命令中的版本號匙隔,例如 openjdk-11-jdk疑苫。
安裝完成后,可以通過如下命令檢測Java版本纷责。
java -version
輸出類似如下內(nèi)容:
openjdk version "17.0.8.1" 2023-08-24
OpenJDK Runtime Environment (build 17.0.8.1+1-Ubuntu-0ubuntu122.04)
OpenJDK 64-Bit Server VM (build 17.0.8.1+1-Ubuntu-0ubuntu122.04, mixed mode, sharing)
這說明捍掺,已經(jīng)成功安裝了Java。
安裝Oracle JDK
Oracle JDK軟件包并不包含在Ubuntu存儲庫中再膳,所以我們需從Oracle網(wǎng)站下載安裝包進(jìn)行安裝挺勿。
訪問 Oracle 網(wǎng)站,進(jìn)入 Java 軟件包下載界面喂柒。
我們可以下載最新版本21的安裝包(根據(jù)你自己的需要下載對應(yīng)的軟件包即可)不瓶,找到對應(yīng)的deb包下載記錄,如下圖所示灾杰。
使用 wget 命令進(jìn)行下載湃番,打開終端,在終端中輸入wget 然后后面跟上下載地址即可吭露。
wget https://download.oracle.com/java/21/archive/jdk-21.0.1_linux-x64_bin.deb
下載后,執(zhí)行如下安裝命令
sudo apt install ./jdk-21.0.1_linux-x64_bin.deb
其中的./
表示當(dāng)前目錄尊惰。
設(shè)置系統(tǒng)默認(rèn)Java版本
在調(diào)試讲竿、構(gòu)建或運行基于Java的應(yīng)用程序時,默認(rèn)使用Java的默認(rèn)版本弄屡。如果您的Ubuntu系統(tǒng)上安裝了多個Java版本题禀,您可以通過鍵入以下內(nèi)容來檢查哪個版本設(shè)置為默認(rèn)版本:
java -version
要更改默認(rèn)版本,請使用update-alternatives
命令:
sudo update-alternatives --config java
您將看到所有已安裝的Java版本的列表膀捷。例如迈嘹,如果您安裝了OpenJDK 11和17和Oracle JDK 21,輸出將如下所示:
There are 3 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/lib/jvm/jdk-21-oracle-x64/bin/java 352329728 auto mode
1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode
2 /usr/lib/jvm/java-17-openjdk-amd64/bin/java 1711 manual mode
3 /usr/lib/jvm/jdk-21-oracle-x64/bin/java 352329728 manual mode
Press <enter> to keep the current choice[*], or type selection number:
輸入您要用作默認(rèn)版本的編號全庸,然后按Enter
秀仲。
通過執(zhí)行以下操作來驗證默認(rèn)版本是否已更改:
java -version
設(shè)置JAVA_HOME
環(huán)境變量
一些Java應(yīng)用程序使用JAVA_HOME
環(huán)境變量來確定JDK安裝位置。
要設(shè)置JAVA_HOME
變量壶笼,首先找到帶有update-alternatives
的Java安裝路徑:
sudo update-alternatives --config java拷貝
在本例中神僵,不同java
二進(jìn)制文件的路徑如下:
- OpenJDK 21位于
/usr/lib/jvm/jdk-21-oracle-x64/bin/java
- OpenJDK 17位于
/usr/lib/jvm/java-17-openjdk-amd64/bin/java
- OpenJDK 11位于
/usr/lib/jvm/java-11-openjdk-amd64/bin/java
java二進(jìn)制文件位于JAVA_HOME/bin/java
。因此覆劈,我們應(yīng)該將JAVA_HOME
設(shè)置為上面的路徑之一保礼,不包括bin/java
部分沛励。
找到首選Java安裝的路徑后,打開/etc/environment
文件:
sudo nano /etc/environment拷貝
假設(shè)您想將JAVA_HOME
設(shè)置為指向OpenJDK 17炮障,請在文件末尾添加以下行:
JAVA_HOME="/usr/lib/jvm/java-17-openjdk-amd64"
要使更改對當(dāng)前會話生效目派,您可以注銷并登錄或運行以下source
命令:
source /etc/environment
要驗證JAVA_HOME
環(huán)境變量是否設(shè)置正確,請鍵入:
echo $JAVA_HOME
您應(yīng)該看到Java安裝的路徑:
/usr/lib/jvm/java-17-openjdk-amd64
/etc/environment
是一個系統(tǒng)范圍的配置文件胁赢,由所有用戶使用企蹭。如果您想在每個用戶的基礎(chǔ)上設(shè)置JAVA_HOME
變量,請將該行添加到.bashrc
或用戶登錄時加載的任何其他配置文件中徘键。
卸載Java
您可以像安裝apt
的任何其他軟件包一樣卸載Java练对。
例如,要卸載openjdk-17-jdk
軟件包吹害,請輸入:
sudo apt remove openjdk-17-jdk
寫在最后
我們向您展示了如何使用apt
軟件包管理器從默認(rèn)的 Ubuntu 22.04 存儲庫安裝OpenJDK 17 和 OpenJDK 11螟凭,以及如何下載和安裝Oracle JDK。
如果您有任何問題它呀,請隨時發(fā)表評論螺男。