安装了 openjdk@17 和 zulu@8,通过 jenv 来管理 JDK 版本

36次阅读
没有评论

你已经成功安装了 openjdk@17 和 zulu@8,现在可以配置 jenv 来管理 JDK 版本。按照下面的步骤操作:


1. 确保 jenv 已安装

如果你还没有安装 jenv,可以先安装:

brew install jenv

然后在 ~/.zshrc 或 ~/.bashrc(取决于你使用的 shell)中添加:

echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(jenv init -)"' >> ~/.zshrc
source ~/.zshrc

检查 jenv 是否生效:

jenv --version

如果 jenv 安装成功,会显示版本号,例如:

jenv 0.5.5

2. 添加 JDK 到 jenv

(1)找到 JDK 安装路径

你可以使用以下命令查看 MacOS 上的 JDK 目录:

/usr/libexec/java_home -V

示例输出:

Matching Java Virtual Machines (2):
    17.0.14 (x86_64) "Homebrew" - "/opt/homebrew/Cellar/openjdk@17/17.0.14/libexec/openjdk.jdk/Contents/Home"
    1.8.0_412 (x86_64) "Zulu"    - "/Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home"

记住这些路径。

(2)将 JDK 添加到 jenv

运行以下命令,把 JDK 版本添加到 jenv

jenv add /opt/homebrew/Cellar/openjdk@17/17.0.14/libexec/openjdk.jdk/Contents/Home
jenv add /Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home

然后检查:

jenv versions

如果成功,会显示:

* system
  1.8
  17.0

3. 启用 Java 版本切换

(1)设置全局 Java 版本

如果你想全局使用 Java 17:

jenv global 17

如果你想全局使用 Java 8:

jenv global 1.8

(2)设置本地 Java 版本

如果你想在某个项目目录中使用特定的 Java 版本:

cd /path/to/project
jenv local 1.8  # 该项目使用 Java 8

如果要切回 Java 17:

jenv local 17

(3)设置 Shell 会话内 Java 版本

如果你只想在当前终端会话中临时使用 Java 8:

jenv shell 1.8

退出终端后会恢复默认版本。


4. 确保 JAVA_HOME 正确设置

启用 export 插件,使 jenv 自动管理 JAVA_HOME

jenv enable-plugin export
exec zsh  # 或者 source ~/.zshrc 让配置生效

然后检查 JAVA_HOME

echo $JAVA_HOME

如果你当前的 Java 版本是 1.8,应该显示:

/Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home

如果是 17,应该显示:

/opt/homebrew/Cellar/openjdk@17/17.0.14/libexec/openjdk.jdk/Contents/Home

5. 验证 Java 版本

java -version

如果 jenv global 1.8

openjdk version "1.8.0_xxx" ...

如果 jenv global 17

openjdk version "17.0.xxxx" ...

总结

  1. 安装 jenv(如果还没安装)。
  2. 添加 JDK 路径到 jenvjenv add)。
  3. 启用 jenv 自动管理 JAVA_HOMEjenv enable-plugin export)。
  4. 切换 JDK 版本jenv global / jenv local / jenv shell)。
  5. 检查 Java 版本是否正确生效java -version)。

现在你可以自由切换 JDK 版本了 🚀

正文完
 0
bdspAdmin
版权声明:本站原创文章,由 bdspAdmin 于2026-01-25发表,共计1660字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)

摆渡资源站

文章搜索
一言一句话
-「
热门文章
青龙面板一键安装所有依赖

青龙面板一键安装所有依赖

https://blog.csdn.net/qq_42123284/article/details/13537...
1Panel服务器迁移和WordPress配置

1Panel服务器迁移和WordPress配置

  1Panel服务器迁移 1Panel的整体迁移相对简单,使用快照功能即可实现。但是要求新旧服务器...
Ubuntu 通过页面设置固定 ip

Ubuntu 通过页面设置固定 ip

要在 Ubuntu 图形界面(桌面)设置固定 IP,通过右上角网络图标进入设置,找到有线/无线连接,点击齿轮图...
安装了 openjdk@17 和 zulu@8,通过 jenv 来管理 JDK 版本

安装了 openjdk@17 和 zulu@8,通过 jenv 来管理 JDK 版本

你已经成功安装了 openjdk@17 和 zulu@8,现在可以配置 jenv 来管理 JDK 版本。按照下...
为什么不要在知乎写东西

为什么不要在知乎写东西

知乎的平台注定不能做大做强走向世界,限制太多了 不能发表外链 无缘无故删除文章,警告。
最新评论
最新文章
手滑点错更新也不怕!超详细 Mac 系统更新屏蔽指南(附安全恢复方案)

手滑点错更新也不怕!超详细 Mac 系统更新屏蔽指南(附安全恢复方案)

  Mac 屏蔽系统更新并消除小红点全攻略 在 macOS 系统中,系统更新提示的小红点常常让人不胜...
我是如何扫描GitHub上所有“Oops提交”以查找泄露的秘密的

我是如何扫描GitHub上所有“Oops提交”以查找泄露的秘密的

  tl;dr GitHub Archive 会记录每一次公开提交,即使是开发者试图删除的提交也不例...
Mermaid 对比 PlantUML

Mermaid 对比 PlantUML

🔍 核心语法差异说明 为了让转换更顺利,了解两者主要的语法区别会很有帮助: 元素 Mermaid 语法 Pla...
sequenceDiagram

sequenceDiagram

  根据你之前的代码和需求,你提到的 sequenceDiagram 代码块通常属于 Mermaid...
订单状态更新,异步的,然后需要触发止盈,我应该放到哪个领域中

订单状态更新,异步的,然后需要触发止盈,我应该放到哪个领域中

  这是一个非常经典的交易系统架构问题。将止盈触发逻辑放在哪里,直接影响到系统的清晰度、可维护性和扩...