Jabba 是一个跨平台的 Java 版本管理工具,类似于 Node.js 的 nvm,可以轻松安装和切换多个 Java 版本。
一、安装 Jabba
1. 下载 Jabba
访问 Jabba Releases 下载最新版本。
下载 jabba-{version}-windows-amd64.exe 文件。
2. 安装 Jabba
将下载的文件重命名为
jabba.exe将
jabba.exe放到一个固定目录,例如:D:\Dev\jabba\将该目录添加到系统 PATH 环境变量
3. 配置环境变量
图形界面方式
按
Win + R,输入sysdm.cpl,回车点击「高级」选项卡 → 「环境变量」
在「用户变量」中找到
Path,双击编辑点击「新建」,添加:
D:\Dev\jabba点击「确定」保存所有对话框
重新打开终端
命令行方式(PowerShell)
[Environment]::SetEnvironmentVariable("Path",
[Environment]::GetEnvironmentVariable("Path", "User") + ";D:\Dev\jabba", "User")
然后重新打开终端。
4. 验证安装
jabba --version
二、使用 Jabba 安装 Java
1. 查看可用的 Java 版本
# 查看所有可用版本
jabba ls-remote
# 查看 JDK 8 版本
jabba ls-remote | findstr "1.8"
2. 安装 JDK 8
# 安装 AdoptOpenJDK 8(推荐)
jabba install adopt@1.8.0-292
# 其他可选版本
jabba install zulu@1.8.282
jabba install amazon-corretto@1.8.292-10.1
3. 设置 Java 版本
# 设置为当前会话使用的版本
jabba use adopt@1.8.0-292
# 设置为默认版本(需要管理员权限)
jabba alias default adopt@1.8.0-292
4. 配置 Java 环境变量
Jabba 安装的 JDK 位于:C:\Users\你的用户名\.jabba\jdk\adopt@1.8.0-292
需要将该目录下的 bin 子目录添加到 PATH。
命令行方式(PowerShell)
# 添加 Java 到用户环境变量
[Environment]::SetEnvironmentVariable("Path",
[Environment]::GetEnvironmentVariable("Path", "User") +
";C:\Users\admin\.jabba\jdk\adopt@1.8.0-292\bin", "User")
# 重新加载当前会话的环境变量
$env:Path = [System.Environment]::GetEnvironmentVariable("Path", "Machine") +
";" + [System.Environment]::GetEnvironmentVariable("Path", "User")
# 验证
java -version
图形界面方式
按
Win + R,输入sysdm.cpl,回车点击「高级」→「环境变量」
在「用户变量」中找到
Path,双击编辑点击「新建」,添加:
C:\Users\admin\.jabba\jdk\adopt@1.8.0-292\bin点击「确定」保存
重新打开终端
5. 验证安装
java -version
输出示例:
openjdk version "1.8.0_292"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_292-b10)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.292-b10, mixed mode)
三、Jabba 常用命令
# 查看已安装的版本
jabba ls
# 查看当前使用的版本
jabba current
# 切换版本
jabba use adopt@1.8.0-292
# 卸载版本
jabba uninstall adopt@1.8.0-292
# 设置默认版本
jabba alias default adopt@1.8.0-292
# 查看可用版本
jabba ls-remote
四、常见问题
Q1: PowerShell 执行策略错误
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Q2: 环境变量未生效
重新打开终端,或执行以下命令重新加载环境变量:
$env:Path = [System.Environment]::GetEnvironmentVariable("Path", "Machine") +
";" + [System.Environment]::GetEnvironmentVariable("Path", "User")
Q3: jabba alias default 失败
该命令需要管理员权限来创建符号链接。如果不设置默认版本,每次打开新终端后执行:
jabba use adopt@1.8.0-292
五、总结
使用 Jabba 管理 Java 版本的优势:
轻松安装多个 Java 版本
快速切换不同版本
无需手动下载和配置
跨平台支持(Windows、macOS、Linux)
参考资料: