当前位置: 首页 > news >正文

Java开发—JDK的安装和版本管理(macOS)

目录

🔧 直接使用 Homebrew 安装与切换

1、安装 JDK 8​​

2、手动切换版本​​

🛠️ 使用 jenv 进行高级版本管理

1、安装 jenv​​

2、配置 Shell

3、将 JDK 添加到 jenv 管理​​

4、使用 jenv 切换版本

💎 其他注意事项与建议


使用Homebrew安装JDK是最基础、也是最方便的方式。

当然,我们也可以选择,Oracle官网的下载安装的方式。

JDK的版本管理,当我们开发中,需要管理多个版本的JDK的时候,我们不仅可以通过手动管理,也可以使用JDK的版本管理工具。

基本结构如下所示

🔧 直接使用 Homebrew 安装与切换

这是最基础的方法,适合只需要偶尔切换版本的情况。

1、安装 JDK 8​

首先,你需要通过 Homebrew 安装 JDK 8。目前常见的开源版本是 Temurin(由 AdoptOpenJDK 项目衍生)或 OpenJDK。在终端中执行以下命令即可安装:

brew install --cask temurin8

安装完成后,JDK 文件通常会位于 /Library/Java/JavaVirtualMachines/目录下。

2、手动切换版本​

安装多个 JDK 后,你需要告诉系统当前要使用哪一个。macOS 提供了一个便利的工具 /usr/libexec/java_home来帮助你定位 JDK 路径。你可以通过编辑 shell 配置文件(例如 ~/.zshrc~/.bash_profile)来设置。

使用 nano ~/.zshrc或你常用的文本编辑器打开配置文件,添加或修改以下行(将版本号 1.8替换为你需要的具体版本):

export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)
export PATH="$JAVA_HOME/bin:$PATH"

保存文件后,执行 source ~/.zshrc使配置立即生效。之后可以通过 java -versionecho $JAVA_HOME验证是否切换成功。

你也可以不修改配置文件,而是直接在终端会话中执行上面的 export命令进行临时切换,这只对当前终端窗口有效。

🛠️ 使用 jenv 进行高级版本管理

如果你需要频繁地在不同项目间切换 JDK 版本,强烈推荐使用 ​​jenv​​。它是一个轻量级的版本管理工具,可以让你轻松设置全局默认版本、针对特定目录(项目)设置本地版本。

1、安装 jenv​

通过 Homebrew 安装 jenv:

brew install jenv

2、配置 Shell

接下来,需要将 jenv 的初始化脚本添加到你的 shell 配置文件中。以 Z shell 为例,将以下内容添加到 ~/.zshrc文件中:

export PATH="$HOME/.jenv/bin:$PATH"
eval "$(jenv init -)"

然后运行 source ~/.zshrc

3、将 JDK 添加到 jenv 管理​

现在,你需要让 jenv 知道你系统里已经安装的所有 JDK。首先,可以查看系统已识别出的 JDK 路径:

/usr/libexec/java_home -V

然后,使用 jenv add命令将 JDK 的根路径添加到 jenv 的管理中。例如,添加已安装的 JDK 8 和 JDK 21:

jenv add /Library/Java/JavaVirtualMachines/temurin-8.jdk/Contents/Home
jenv add /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home

添加后,运行 jenv versions可以查看所有被 jenv 管理的 JDK 版本,前面带 *的表示当前激活的版本。

4、使用 jenv 切换版本

现在,你可以非常方便地切换版本了:

  1. 设置全局默认版本​​:jenv global 1.8
  2. 设置当前目录的本地版本​​(非常适合为不同项目设置特定版本):jenv local 17这会在当前目录创建一个 .java-version文件。
  3. 设置完成后,任何时候在终端输入 java -version,jenv 会自动指向你设置的版本。

💎 其他注意事项与建议

  • ​确认安装成功​​:无论用哪种方法,安装和切换后,都在终端执行 java -versionjavac -version来确认版本已按预期切换。

  • ​版本冲突​​:如果切换后版本显示不对,可能是 PATH 设置问题。可以检查 echo $PATH,确保当前 JAVA_HOME/bin在路径最前面。使用 jenv 可以很好地避免这类混乱。

  • ​卸载旧版本​​:如果你想卸载某个不再需要的 JDK 版本,可以使用 Homebrew 命令(例如 brew uninstall --cask temurin17)或直接删除 JDK 在 /Library/Java/JavaVirtualMachines/下的目录。使用 jenv 管理时,则无需卸载,只需切换。

希望这份详细的指南能帮助你顺利完成 JDK 的安装和版本管理!

http://www.dtcms.com/a/506737.html

相关文章:

  • 初次使用remix
  • 文献阅读翻译工具的选择
  • YOLOv1原理介绍
  • c 网站建设教程win7 搭建iss网站
  • 镇江软件公司南宁网站建设优化案例
  • 火电厂VR安全培训系统有哪些:广州华锐互动构建 “安全元宇宙” 生态
  • 【计算机科学与应用】基于多光谱成像与边缘计算的物流安全风险预警模式及系统实现
  • 分布式架构未来趋势:从云原生到智能边缘的演进之路
  • 云原生系列Bug修复:Docker镜像无法启动的终极解决方案与排查思路
  • 元宇宙赋能智慧城市:重构城市治理与生活新生态
  • 算法笔试题具体在考什么领域的知识?计算机科学领域的基础:数据结构,计算机组成原理,操作系统,计算机网络
  • HarmonyOS安全与隐私:权限申请与敏感数据保护实战
  • 做促销的网站珠海网站建设厚瑜
  • 基于STM32F103ZET6实现6路舵机控制
  • 【案例实战】鸿蒙分布式智能办公应用的架构设计与性能优化
  • 嘉兴网站排名优化价格环保网站 中企动力建设
  • 网站注册页面html网站建设邀标书
  • spring AOP失效的原因
  • 阿里云国际代理:阿里云备份如何保障数据安全?
  • Elasticsearch面试精讲 Day 25:Elasticsearch SQL与数据分析
  • Spring Boot 3零基础教程,WEB 开发 Thymeleaf 总结 热部署 常用配置 笔记44
  • 从概念到代码:4A架构(业务架构、数据架构、应用架构、技术架构)全景落地指南
  • 深入解析 ZeroMQ 请求-应答模式:服务端实现与全链路测试指南 || 测试ZMQ重连重试机制
  • 五行八卦知识介绍和科学的关系
  • 做公司网站客户群体怎么找数据库怎么存储wordpress
  • 拉力猫指纹浏览器配置 Novproxy 代理 IP 教程:从参数设置到连接验证全流程
  • 深圳购物网站建设公司wordpress插件无法安装
  • 内网用户无法通过公网IP访问内网服务器:NAT回流问题
  • 【高并发服务器】Socket套接字类 Channel事件管理类设计与实现
  • Linux服务器编程实践52-SO_LINGER选项:控制close关闭TCP连接的行为