homebrew 搭建多版本 java 环境的核心是“分装 + 统管”:用 homebrew 干净安装各 jdk 版本,再通过 jenv 统一注册并动态切换,全程不修改系统 jdk 和 java_home,一行命令即可完成全局、会话或项目级版本切换。
用 homebrew 搭建多版本 java 动态切换环境,核心是“分装 + 统管”:homebrew 负责干净安装各 jdk 版本,jenv 负责按需激活对应版本。整个过程不碰系统自带 jdk,也不手动改 java_home,切换命令一行搞定。
安装 Homebrew 并配置基础环境
打开终端,运行官方安装命令:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
安装完成后,根据芯片类型执行对应 PATH 配置:
- M 系列 Mac(Apple Silicon):echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc && source ~/.zshrc
- Intel Mac:echo 'eval "$(/usr/local/bin/brew shellenv)"' >> ~/.zshrc && source ~/.zshrc
验证是否就绪:brew --version 和 brew doctor 均应无报错。
用 Homebrew 安装多个 OpenJDK 版本
Homebrew 的 openjdk 公式默认安装最新版(如 JDK 23),但各历史版本也全部支持:
- 安装 JDK 17:brew install openjdk@17
- 安装 JDK 11:brew install openjdk@11
- 安装 JDK 8:brew install openjdk@8
- 查看已安装路径:brew --prefix openjdk@17(返回类似 /opt/homebrew/opt/openjdk@17)
所有版本均独立存放,互不覆盖,卸载也只需 brew uninstall openjdk@8。
用 jEnv 统一管理并动态切换版本
jEnv 是专为 Java 版本设计的轻量级切换工具,与 Homebrew 天然兼容:
- 安装 jEnv:brew install jenv
- 将 jEnv 加入 shell 初始化:echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(jenv init -)"' >> ~/.zshrc && source ~/.zshrc - 把 Homebrew 安装的 JDK 注册进 jEnv:
jenv add /opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk/Contents/Home
jenv add /opt/homebrew/opt/openjdk@11/libexec/openjdk.jdk/Contents/Home
jenv add /opt/homebrew/opt/openjdk@8/libexec/openjdk.jdk/Contents/Home - 查看已注册版本:jenv versions(带 * 的为当前全局版本)
切换方式灵活:
— 全局切换:jenv global 17.0
— 当前 Shell 会话切换:jenv shell 11.0
— 指定项目目录自动切换(推荐):cd /path/to/project && jenv local 8.0(会在该目录下生成 .java-version 文件)
验证与日常使用
每次切换后,用以下命令确认生效:
- java -version(显示实际运行版本)
- javac -version(确认编译器同步)
- echo $JAVA_HOME(应指向 jEnv 管理的路径,如 ~/.jenv/versions/17.0)
IDE(如 IntelliJ IDEA、VS Code)会自动读取系统 JAVA_HOME,无需额外配置 SDK —— 只要终端里 java -version 正确,项目构建和调试就自然对齐。
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











