在Linux系統(tǒng)中安裝與管理Java jdk 8的三種方法
本教程適用于在 Linux 系統(tǒng)中快速安裝與使用 Java jdk 8。提供 臨時運(yùn)行(不污染系統(tǒng)) 和 長期安裝(多版本管理) 兩種方式。
臨時使用 Java 8(無須安裝,不影響系統(tǒng)環(huán)境)
方法一:手動下載并在當(dāng)前 shell 中運(yùn)行 Java 8
第 1 步:下載 Java 8(OpenJDK)
從 Adoptium 開源項(xiàng)目獲取官方 Java 8:
wget https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_x64_linux_hotspot_8u412b08.tar.gz
第 2 步:解壓并進(jìn)入目錄
tar -xf OpenJDK8U-jdk_x64_linux_hotspot_8u412b08.tar.gz cd jdk8u*/bin
第 3 步:使用 Java 8 執(zhí)行工具
例如使用 ysoserial:
./java -jar /path/to/ysoserial-all.jar CommonsCollections5 "id"
你還可以設(shè)置alias,更加方便,比如我就做了如下設(shè)置:
alias java8='/opt/jdk8u412-b08/bin/java'
優(yōu)勢:
- 無需安裝系統(tǒng)級 Java。
- 避免影響已有 Java 環(huán)境(如 Java 11+)。
- 可與不同版本并存。
長期使用 Java 8(適合頻繁切換和開發(fā))
方法一:使用 jenv 管理多個 Java 版本(推薦)
jenv 是一個輕量級 Java 版本管理器,適合需要頻繁在 Java 8 / 11 / 17 等版本間切換的用戶。
安裝 jenv
git clone https://github.com/jenv/jenv.git ~/.jenv echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bashrc echo 'eval "$(jenv init -)"' >> ~/.bashrc source ~/.bashrc
添加 Java 8 到 jenv
假設(shè)你已經(jīng)下載了解壓后的 Java 8(見上文臨時部分):
jenv add /path/to/jdk8u412-b08
切換 Java 版本(僅對當(dāng)前 shell 生效)
jenv shell 1.8
你也可以設(shè)置項(xiàng)目級或全局版本:
jenv local 1.8 # 當(dāng)前目錄有效 jenv global 1.8 # 所有 shell 默認(rèn)使用
方法二:手動安裝 Java 8 到系統(tǒng)并配置環(huán)境(系統(tǒng)級)
第 1 步:下載 Java 8 安裝包
推薦使用華為云鏡像,速度快且穩(wěn)定:
wget https://repo.huaweicloud.com:8443/artifactory/java-local/jdk/8u202-b08/jdk-8u202-linux-x64.tar.gz
第 2 步:解壓并放入系統(tǒng)目錄
sudo mkdir -p /usr/lib/jvm sudo tar -xvzf ~/Downloads/jdk-8u202-linux-x64.tar.gz -C /usr/lib/jvm
第 3 步:配置環(huán)境變量
編輯全局環(huán)境文件:
sudo nano /etc/environment
在 PATH 后追加以下內(nèi)容(冒號分隔):
:/usr/lib/jvm/jdk1.8.0_202/bin:/usr/lib/jvm/jdk1.8.0_202/db/bin:/usr/lib/jvm/jdk1.8.0_202/jre/bin
保存并刷新:
source /etc/environment
驗(yàn)證:
echo $PATH
第 4 步:注冊 Java 命令(update-alternatives)
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.8.0_202/bin/java" 0 sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.8.0_202/bin/javac" 0
第 5 步:切換默認(rèn) Java 版本
sudo update-alternatives --set java /usr/lib/jvm/jdk1.8.0_202/bin/java sudo update-alternatives --set javac /usr/lib/jvm/jdk1.8.0_202/bin/javac
或者使用交互式菜單切換:
sudo update-alternatives --config java sudo update-alternatives --config javac
第 6 步:驗(yàn)證安裝是否成功
java -version javac -version
應(yīng)輸出類似:
java version "1.8.0_202" javac 1.8.0_202
常見問題 & 解決方案
| 問題 | 解決辦法 |
|---|---|
| java: command not found | 確保 PATH 配置正確并執(zhí)行 source /etc/environment |
| ysoserial 報錯無法訪問字段 | 使用 Java 8 運(yùn)行 ysoserial,而不是 Java 11+ |
| 多版本混用混亂 | 使用 jenv 或 update-alternatives --config 明確指定 |
推薦方案對比表
| 場景 | 方法 | 是否推薦 |
|---|---|---|
| 快速一次性使用 Java 8 | 手動下載運(yùn)行 | 強(qiáng)烈推薦 |
| 需要多個版本自由切換 | jenv 管理 | 推薦(靈活) |
| 固定長期使用 Java 8 | 系統(tǒng)級安裝 | 推薦(需小心系統(tǒng)依賴) |
| 完全隔離、一次性運(yùn)行 | Docker + OpenJDK | (環(huán)境潔凈) |
以上就是在Linux系統(tǒng)中安裝與管理Java jdk 8的三種方法的詳細(xì)內(nèi)容,更多關(guān)于Linux安裝與管理Java jdk 8的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Apache中偽靜態(tài)Rewrite的使用方法和URL重寫規(guī)則表達(dá)式講解
apache中的mod_rewrite模塊提供了一個基于正則表達(dá)式分析器的重寫引擎來實(shí)時重寫URL請求,主要的功能就是實(shí)現(xiàn)URL的跳轉(zhuǎn),它的正則表達(dá)式是基于Perl語言??苫诜?wù)器級的(httpd.conf)和目錄級的(.htaccess)兩種方式,允許通過它來改變Apache?Web服務(wù)器的配置。2022-11-11
linux系統(tǒng)虛擬主機(jī)開啟支持SourceGuardian(sg11)加密組件的詳細(xì)步驟
這篇文章主要介紹了linux系統(tǒng)虛擬主機(jī)開啟支持SourceGuardian(sg11)加密組件的詳細(xì)步驟,需要的朋友可以參考下2020-12-12
Virtualbox安裝Lubuntu 18.04 64位的圖文教程
這篇文章主要為大家詳細(xì)介紹了Virtualbox安裝Lubuntu 18.04 64位的圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-07-07
Apache服務(wù)器中.htaccess的基本配置總結(jié)
這篇文章主要介紹了Apache服務(wù)器中.htaccess的基本配置總結(jié),可以很方便地實(shí)現(xiàn)一些權(quán)限分配等效果,需要的朋友可以參考下2015-07-07
CentOS搭建PHP服務(wù)器環(huán)境簡明教程
這篇文章主要介紹了CentOS搭建PHP服務(wù)器環(huán)境的方法,簡單講述了CentOS平臺安裝Apache、mysql、php環(huán)境及相關(guān)測試代碼,非常簡單實(shí)用,需要的朋友可以參考下2018-03-03
Ubuntu 20.04 火狐瀏覽器無法播放視頻(缺少flash插件)的解決方法
這篇文章主要介紹了Ubuntu 20.04 火狐瀏覽器無法播放視頻(缺少flash插件)的解決方法,本文分步驟給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-08-08
Ubuntu18.04服務(wù)器密碼忘記或被篡改如何重置密碼
這篇文章主要介紹了Ubuntu18.04服務(wù)器密碼忘記或被篡改如何重置密碼,本文分步驟給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-09-09

