JDK多版本管理工具安裝和使用詳細教程
概要
Jabba 是一個開源的多版本 Java 管理工具,類似于 SDKMAN!,它支持多個 JDK 版本的管理,
本文主要講解在Windows系統(tǒng)安裝Jabba ,并且適用于 Windows、macOS 和 Linux 系統(tǒng)
以下是你可以選擇的一些方法:
通過 Windows Terminal 配置不同環(huán)境變量:
- 在 Windows Terminal 中,你可以為每個配置(例如 PowerShell 或 Command Prompt)設置不同的環(huán)境變量
JAVA_HOME和Path,確保每次啟動時自動切換到指定的 JDK 版本。
- 在 Windows Terminal 中,你可以為每個配置(例如 PowerShell 或 Command Prompt)設置不同的環(huán)境變量
使用開源工具(如 Jabba 和 SDKMAN!):
- Jabba 是一個簡單的多版本管理工具,支持在 Windows 上安裝并切換不同的 JDK 版本。你可以通過命令行安裝 JDK,并隨時切換所需版本。
- SDKMAN! 也可以通過 Windows 子系統(tǒng) Linux(WSL)使用,支持跨平臺切換 JDK 版本。它適用于需要多版本管理的開發(fā)者。
手動配置多個 JDK 版本:
- 如果不想使用額外的工具,你可以手動安裝多個 JDK 版本,并通過腳本或環(huán)境變量的修改,在不同的終端會話中切換。
以下為參考信息
方法一:手動管理 JDK 版本切換
安裝多個 JDK 版本
- 你可以在不同的目錄下安裝多個 JDK 版本,例如:
C:\Program Files\Java\jdk1.8.0_281C:\Program Files\Java\jdk-21
- 你可以在不同的目錄下安裝多個 JDK 版本,例如:
設置 JAVA_HOME 環(huán)境變量
- 每次你想切換 JDK 版本時,可以手動更改
JAVA_HOME環(huán)境變量,指向不同的 JDK 安裝目錄。 - 具體操作步驟:
- 打開 系統(tǒng)屬性 → 高級系統(tǒng)設置 → 環(huán)境變量。
- 在 系統(tǒng)變量 中找到
JAVA_HOME,然后編輯它的值,指向你想使用的 JDK 路徑。 - 編輯完
JAVA_HOME后,更新Path變量,確保Path變量中包含%JAVA_HOME%\bin。
- 每次你想切換 JDK 版本時,可以手動更改
驗證 JDK 切換
- 每次切換完
JAVA_HOME后,打開命令行終端,使用java -version和javac -version命令來檢查當前 JDK 版本。
- 每次切換完
方法二:使用批處理腳本(方便切換)
你可以編寫一個簡單的 批處理腳本(.bat 文件)來自動切換 JDK 版本。例如:
@echo off SET JDK_VERSION=21 IF "%JDK_VERSION%"=="8" SET JAVA_HOME=C:\Program Files\Java\jdk1.8.0_281 IF "%JDK_VERSION%"=="21" SET JAVA_HOME=C:\Program Files\Java\jdk-21 SET PATH=%JAVA_HOME%\bin;%PATH% echo Switched to JDK version %JDK_VERSION% java -version
每種方法都有其適用場景,Jabba 和 SDKMAN! 都能提供簡便的版本管理,而手動配置則更靈活適合不依賴第三方工具的開發(fā)者。如果你需要更高級的隔離環(huán)境,還可以考慮使用 Docker 容器化 JDK。
工具安裝和使用流程
7/15/2025, 5:50:33 PM
windows的開源jdk多版本管理工具
7/15/2025, 5:50:44 PM
在 Windows 上,雖然不像 Linux 和 macOS 那樣有像 SDKMAN! 和 Jenv 這樣的多版本管理工具,但依然可以使用一些開源工具來管理多個 JDK 版本。下面是幾種適合 Windows 的開源 JDK 多版本管理工具:
1.Jabba
Jabba 是一個開源的多版本 Java 管理工具,類似于 SDKMAN!,它支持多個 JDK 版本的管理,并且適用于 Windows、macOS 和 Linux 系統(tǒng)。
安裝和使用 Jabba:
GitHub的Jabba的地址:https://github.com/shyiko/jabba/tree/0.11.2
安裝 Jabba:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 Invoke-Expression ( Invoke-WebRequest https://github.com/shyiko/jabba/raw/master/install.ps1 -UseBasicParsing ).Content

如下圖所示安裝成功 執(zhí)行命令 jabba --version 查詢當前安裝成功的版本

分兩種方式
一:關聯(lián)將系統(tǒng) JDK 與 Jabba 關聯(lián)
一定要使用終端,以管理員的身份運行

1. 在 PowerShell 中使用 jabba link 命令: 通過 jabba link 命令將系統(tǒng)的 JDK 與 Jabba 進行關聯(lián)命令:jabba link system@1.8.0 "C:\Program Files\Java\jdk1.8.0_251"

如果關聯(lián)不了一定要確認jdk的路徑不能帶有空格的路徑文件名下,解決方法請下滑頁面到技術細節(jié)
2. 通過查詢jdk 命令:jabba ls

3. 切換系統(tǒng)的版本的命令:jabba use system@1.8.0
如圖所示,我當前的版本是21

jabba use system@1.8.0
如果切換版本報錯,請下滑頁面到技術細節(jié)
如下圖所示切換就成功了

4. 刪除錯誤的 JDK 版本鏈接的名稱


二:通過jabba進行安裝jdk
安裝 JDK 版本:
- 例如,安裝 JDK 8 和 JDK 11:
jabba install adoptopenjdk@8 jabba install adoptopenjdk@11
- 例如,安裝 JDK 8 和 JDK 11:
切換 JDK 版本:
- 使用以下命令來切換 JDK 版本:
jabba use adoptopenjdk@8 jabba use adoptopenjdk@11
- 使用以下命令來切換 JDK 版本:
查看已安裝的 JDK 版本:
- 列出所有安裝的 JDK 版本:
jabba ls
- 列出所有安裝的 JDK 版本:
技術細節(jié)
帶有空格的文件名路徑的jdk,需要卸載重新安裝jdk就可以解決了

如圖所示就是解決了

切換jdk版本錯誤解決,如圖所示報錯問題

需要將配置的系統(tǒng)變量刪除
刪除以下變量:
用戶變量和系統(tǒng)變量中的
JAVA_HOME用戶變量和系統(tǒng)變量中的
CLASSPATHpath 里的相關聯(lián)的變量



雖然刪除完了系統(tǒng)變量,但是安裝的jabba在文件中文路徑下導致系統(tǒng)識別jdk路徑亂碼,如圖所示

需要卸載重新安裝jabba。
步驟 2:修復 Jabba 安裝位置
powershell
# 1. 卸載當前有問題的 Jabba
Remove-Item -Recurse -Force ~\.jabba
# 2. 設置英文安裝路徑(避開中文用戶名問題)
$env:JABBA_HOME = "C:\.jabba"
# 3. 重新安裝 Jabba
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Invoke-Expression (
Invoke-WebRequest https://github.com/shyiko/jabba/raw/master/install.ps1 -UseBasicParsing
).Content
# 4. 永久設置 JABBA_HOME
[System.Environment]::SetEnvironmentVariable('JABBA_HOME', 'C:\.jabba', 'User')環(huán)境變量需要添加上并且一定要關閉 終端,再重新打開終端

處理完成之后,重新回到上滑頁面到使用教程,重新按照步驟添加以下就能夠成功了,如下圖所示

- 簡單易用,命令行管理。
- 支持 JDK 版本的安裝和切換。
- 跨平臺支持,適用于 Windows、Linux 和 macOS。
注意這里的環(huán)境變量一定要刪除

如果當前系統(tǒng)還存在tomcat需要啟動的情況,可以配置如下所示
全局環(huán)境變量配置
獲取 Java 路徑:
powershell
jabba which system@1.8.0 # 輸出示例:C:\.jabba\jdk\system@1.8.0
設置系統(tǒng)環(huán)境變量:
按
Win + R→ 輸入sysdm.cpl高級 → 環(huán)境變量 → 新建系統(tǒng)變量:
變量名:JAVA_HOME 變量值:C:\.jabba\jdk\system@1.8.0
編輯 PATH → 添加:
%JAVA_HOME%\bin
驗證:
powershell
# 新開終端執(zhí)行 java -version
啟動 Tomcat:
powershell
cd D:\soft-xiao\nutrisystem_file\apache-tomcat-9.0.55\bin .\startup.bat
小結
到此這篇關于JDK多版本管理工具安裝和使用的文章就介紹到這了,更多相關JDK多版本管理工具安裝使用內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
SpringBoot集成Redis數(shù)據(jù)庫,實現(xiàn)緩存管理
SpringBoot2 版本,支持的組件越來越豐富,對Redis的支持不僅僅是擴展了API,更是替換掉底層Jedis的依賴,換成Lettuce。 本案例需要本地安裝一臺Redis數(shù)據(jù)庫。下面就來看下集成Redis的步驟2021-06-06
SpringBoot+thymeleaf+ajax實現(xiàn)局部刷新詳情
這篇文章主要介紹了SpringBoot+thymeleaf+ajax實現(xiàn)局部刷新詳情,文章圍繞主題展開詳細的內容介紹具有一定的參考價值,需要的小伙伴可以參考一下2022-09-09
java基于Apache FTP點斷續(xù)傳的文件上傳和下載
本篇文章主要介紹了java基于Apache FTP點斷續(xù)傳的文件上傳和下載,利用FTP實現(xiàn)文件的上傳和下載,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2016-11-11

