Ubuntu手動(dòng)安裝JDK?17完整教程(.tar.gz?方式)
適用人群:Linux 初學(xué)者、Java 開(kāi)發(fā)者、需要在 Ubuntu 上配置 Java 環(huán)境的用戶
系統(tǒng)環(huán)境:Ubuntu 20.04 / 22.04 / 24.04(或其他 Linux 發(fā)行版)
JDK 版本:Oracle JDK 17(也可適用于 OpenJDK 或其他版本)
在 Ubuntu 上安裝 JDK(Java Development Kit)是進(jìn)行 Java 開(kāi)發(fā)的第一步。雖然可以通過(guò) apt 包管理器快速安裝 OpenJDK,但有時(shí)我們需要使用特定版本的 Oracle JDK,或者希望更靈活地管理多個(gè) JDK 版本。本文將詳細(xì)介紹如何通過(guò)下載 .tar.gz 壓縮包的方式,在 Ubuntu 系統(tǒng)中手動(dòng)安裝并配置 JDK 17。
第一步:下載 JDK
- 打開(kāi)瀏覽器,訪問(wèn) Oracle JDK 下載頁(yè)面。
- 找到 JDK 17 的 Linux x64 版本,選擇 tar.gz 格式進(jìn)行下載。
- 文件名通常為:
jdk-17_linux-x64_bin.tar.gz
- 文件名通常為:
- 下載完成后,默認(rèn)會(huì)保存在
~/Downloads目錄下。
?? 注意:從 Oracle 官網(wǎng)下載 JDK 需要登錄 Oracle 賬號(hào)(免費(fèi)注冊(cè)即可)。
第二步:解壓 JDK 壓縮包
打開(kāi)終端(Ctrl + Alt + T),進(jìn)入下載目錄并解壓文件:
cd ~/Downloads tar -xvzf jdk-17_linux-x64_bin.tar.gz
該命令會(huì)解壓出一個(gè)名為 jdk-17 的文件夾。
第三步:移動(dòng) JDK 到系統(tǒng)目錄(推薦)
為了便于管理和權(quán)限控制,建議將 JDK 移動(dòng)到 /usr/local/ 目錄下:
sudo mv jdk-17 /usr/local/
? 提示:
/usr/local/是存放本地安裝軟件的常用目錄,符合 Linux 文件系統(tǒng)規(guī)范。
第四步:配置環(huán)境變量
我們需要設(shè)置 JAVA_HOME 和 PATH 環(huán)境變量,以便系統(tǒng)能夠識(shí)別 java、javac 等命令。
編輯當(dāng)前用戶的 ~/.bashrc 文件:
nano ~/.bashrc
在文件末尾添加以下內(nèi)容:
# Java Environment Variables export JAVA_HOME=/usr/local/jdk-17 export PATH=$JAVA_HOME/bin:$PATH
? 提示:
JAVA_HOME指向 JDK 安裝目錄。- 將
bin目錄加入PATH,使命令全局可用。
保存并退出 nano 編輯器:
- 按下
Ctrl + O保存文件; - 按
Enter確認(rèn); - 按
Ctrl + X退出。
第五步:應(yīng)用環(huán)境變量
為了讓配置立即生效,運(yùn)行以下命令:
source ~/.bashrc
?? 如果你使用的是
zsh(如新版 Ubuntu 或 macOS),請(qǐng)編輯~/.zshrc文件,并執(zhí)行source ~/.zshrc。
第六步:驗(yàn)證安裝
運(yùn)行以下命令檢查 Java 是否安裝成功:
java -version
如果看到類(lèi)似輸出,說(shuō)明安裝成功:
java version "17.0.1" 2021-09-14 LTS Java(TM) SE Runtime Environment (build 17.0.1+12-LTS-39) Java HotSpot(TM) 64-Bit Server VM (build 17.0.1+12-LTS-39, mixed mode, sharing)
你也可以驗(yàn)證編譯器:
javac -version # 輸出:javac 17.0.1
可選:切換多個(gè) JDK 版本(進(jìn)階)
如果你需要管理多個(gè) JDK 版本,可以使用 update-alternatives 工具或通過(guò)修改 JAVA_HOME 快速切換。
例如,切換到 OpenJDK 11:
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 export PATH=$JAVA_HOME/bin:$PATH
常見(jiàn)問(wèn)題
| 問(wèn)題 | 解決方案 |
|---|---|
java: command not found | 檢查 PATH 是否包含 $JAVA_HOME/bin,確認(rèn) .bashrc 是否已 source |
| 權(quán)限不足 | 使用 sudo 移動(dòng)文件,確保目錄可讀 |
| 下載鏈接失效 | 登錄 Oracle 賬戶,確認(rèn)是否勾選了許可協(xié)議 |
結(jié)語(yǔ)
通過(guò)以上步驟,你已經(jīng)成功在 Ubuntu 系統(tǒng)中手動(dòng)安裝并配置了 Oracle JDK 17。這種方式不僅適用于 JDK 17,也適用于 JDK 8、JDK 21 等其他版本,只需替換對(duì)應(yīng)的壓縮包和路徑即可。
手動(dòng)安裝雖然比 apt 多幾步,但能讓你更清晰地理解 JDK 的結(jié)構(gòu)和環(huán)境變量的作用,是每位 Java 開(kāi)發(fā)者必備的基礎(chǔ)技能。
到此這篇關(guān)于Ubuntu手動(dòng)安裝JDK 17完整教程的文章就介紹到這了,更多相關(guān)Ubuntu手動(dòng)安裝JDK 17內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Maven打包jar包沒(méi)有主屬性問(wèn)題解決方案
這篇文章主要介紹了Maven打包jar包沒(méi)有主屬性問(wèn)題解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07
JavaWeb監(jiān)聽(tīng)器Listener實(shí)例解析
這篇文章主要為大家詳細(xì)介紹了JavaWeb監(jiān)聽(tīng)器Listener實(shí)例,針對(duì)監(jiān)聽(tīng)器進(jìn)行進(jìn)行細(xì)致分析,感興趣的小伙伴們可以參考一下2016-08-08
Spring Boot中的SpringSecurity基礎(chǔ)教程
Spring Security是一個(gè)功能強(qiáng)大且高度可定制的身份驗(yàn)證和訪問(wèn)控制框架。它實(shí)際上是保護(hù)基于spring的應(yīng)用程序的標(biāo)準(zhǔn)Spring Security是一個(gè)框架,側(cè)重于為Java應(yīng)用程序提供身份驗(yàn)證和授權(quán),這篇文章主要介紹了Spring Boot中的SpringSecurity學(xué)習(xí),需要的朋友可以參考下2023-01-01
SpringBoot集成ElasticSearch實(shí)現(xiàn)搜索功能
本文主要介紹了Spring Boot 集成ElasticSearch實(shí)現(xiàn)搜索功能,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-03-03
Springboot之自定義全局異常處理的實(shí)現(xiàn)
這篇文章主要介紹了Springboot之自定義全局異常處理的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08
springboot使用redis對(duì)單個(gè)對(duì)象進(jìn)行自動(dòng)緩存更新刪除的實(shí)現(xiàn)
本文主要介紹了springboot使用redis對(duì)單個(gè)對(duì)象進(jìn)行自動(dòng)緩存更新刪除的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08
ThreadLocal內(nèi)存泄漏常見(jiàn)要點(diǎn)解析
這篇文章主要介紹了ThreadLocal內(nèi)存泄漏常見(jiàn)要點(diǎn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11
Java遞歸來(lái)實(shí)現(xiàn)漢諾塔游戲,注釋詳細(xì)
這篇文章介紹了Java遞歸來(lái)實(shí)現(xiàn)漢諾塔游戲的方法,文中的代碼注釋介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-11-11

