结合 Homebrew 和 jenv 是在 macOS 上管理多版本 JDK 的最佳实践。Homebrew 负责安装具体的 JDK 文件,而 jenv 负责在这些版本之间灵活切换。
Homebrew安装配置看下面的教程:
【2026 最新】Mac 终端神器 Homebrew 完全指南:从安装、换源加速到核心命令速查(Mac 版)_mac homebrew-CSDN博客
以下是完整的操作流程:
一、使用 Homebrew 安装 jenv 和 JDK
首先,你需要安装 jenv 工具本身,以及你想要管理的 JDK 版本。
bash
# 1. 安装 jenv
brew install jenv

bash
# 2. 安装不同版本的 JDK (以 JDK 8, 17, 21 为例)
# 推荐使用 --cask 方式安装,更稳定完整
brew install --cask temurin@8
brew install --cask temurin@17
brew install --cask temurin@21
下载 Jdk 17

下载 Jdk 21

二、配置 Shell 环境
安装完成后,需要将 jenv 集成到你的 Shell(通常是 Zsh)中,以便在终端中使用。
在终端执行以下命令,将配置添加到 ~/.zshrc 文件:
bash
# 1. 添加 jenv 到 PATH
echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc
# 2. 初始化 jenv
echo 'eval "$(jenv init -)"' >> ~/.zshrc
# 3. 使配置立即生效
source ~/.zshrc

三、查看 JDK 安装位置
输入:
bash
/usr/libexec/java_home -V
输出:
bash
Matching Java Virtual Machines (2):
21.0.10 (arm64) "Eclipse Adoptium" - "OpenJDK 21.0.10" /Library/Java/JavaVirtualMachines/temurin-21.jdk/Contents/Home
17.0.18 (arm64) "Eclipse Adoptium" - "OpenJDK 17.0.18" /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/temurin-21.jdk/Contents/Home
yixuan@yixuan ~ %
我的就是在
- /Library/Java/JavaVirtualMachines/temurin-21.jdk/Contents/Home
- /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home
四、将 JDK 添加到 jenv 管理
jenv 不会自动发现 Homebrew 安装的 JDK,你需要手动告诉它 JDK 的安装路径。
注意 :对于 Apple Silicon (M1/M2/M3) 芯片的 Mac,Homebrew 的默认安装路径是
/opt/homebrew,而 Intel 芯片通常是/usr/local。以下命令以 Apple Silicon 为例。
bash
# 将 JDK 8 添加到 jenv
jenv add /Library/Java/JavaVirtualMachines/temurin-8.jdk/Contents/Home
# 将 JDK 17 添加到 jenv
jenv add /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home
# 将 JDK 21 添加到 jenv
jenv add /Library/Java/JavaVirtualMachines/temurin-21.jdk/Contents/Home

五、启用关键插件 (非常重要)
为了让 JAVA_HOME 环境变量自动跟随 jenv 切换(这对 Maven、Gradle 和 IDE 至关重要),必须启用 export 插件。
bash
# 启用自动设置 JAVA_HOME 的插件
jenv enable-plugin export
# (可选) 如果你使用 Maven,也可以启用 maven 插件
jenv enable-plugin maven
# 重启终端或执行 source ~/.zshrc 让插件生效

六、常用管理命令
配置完成后,你就可以轻松管理版本了。
| 功能 | 命令 | 说明 |
|---|---|---|
| 查看版本 | jenv versions |
列出所有已注册的 JDK 版本 |
| 查看当前 | jenv version |
显示当前正在使用的版本 |
| 全局切换 | jenv global 17 |
设置系统默认版本为 JDK 17 |
| 项目切换 | jenv local 8 |
仅在当前目录使用 JDK 8 (生成 .java-version 文件) |
| 临时切换 | jenv shell 21 |
仅在当前终端窗口会话有效 |
| 删除版本 | jenv remove 1.8 |
从 jenv 管理中移除某版本 (不卸载文件) |

七、验证与排障
-
检查配置状态 :
输入
jenv doctor可以诊断配置是否正确。如果提示JAVA_HOME未设置,请确保你执行了第 4 步的插件启用命令并重启了终端。 -
验证 Java 版本 :
输入
java -version查看当前生效的版本。 -
验证环境变量 :
输入
echo $JAVA_HOME,它应该指向当前 jenv 选定的 JDK 路径。
通过以上步骤,你就可以在 macOS 上完美地通过 Homebrew 安装 JDK,并使用 jenv 进行专业级的版本管理。