MacOS安装多个版本JDK

不同java项目对JDK版本依赖不同,如何在一个开发环境安装多个版本JDK?如何实现快速切换JDK版本?

安装

下载多个版本JDK进行安装:https://www.oracle.com/java/technologies/downloads/

sh 复制代码
# 查看已安装JDK:
$ /usr/libexec/java_home -V

# 或通过查看 /Library/Java/JavaVirtualMachines 目录下存在对应多个版本JDK
$ ls /Library/Java/JavaVirtualMachines
# 输出:jdk-17.jdk jdk-19.jdk

配置

编辑 ~/.bash_profile 或者 ~/.zshrc(如果之前配置过 JAVA_HOME 配置记得删除)

sh 复制代码
# Java config
export JAVA_17_HOME="/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home"
export JAVA_19_HOME="/Library/Java/JavaVirtualMachines/jdk-19.jdk/Contents/Home"

# config alias
alias jdk17="export JAVA_HOME=$JAVA_17_HOME"
alias jdk19="export JAVA_HOME=$JAVA_19_HOME"

# config default jdk
export JAVA_HOME=$JAVA_19_HOME
export PATH="$JAVA_HOME:$PATH"

保存生效配置信息

sh 复制代码
$ source ~/.bash_profile

# ~/.zshrc 对应
$ source ~/.zshrc

使用

sh 复制代码
# 查看默认版本
$ java -version
java version "19.0.1" 2022-10-18
Java(TM) SE Runtime Environment (build 19.0.1+10-21)
Java HotSpot(TM) 64-Bit Server VM (build 19.0.1+10-21, mixed mode, sharing)

# 切换成 JDK17 版本
$ jdk17
$ java -version
java version "17.0.8" 2023-07-18 LTS
Java(TM) SE Runtime Environment (build 17.0.8+9-LTS-211)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.8+9-LTS-211, mixed mode, sharing)
相关推荐
Tigshop开源商城1 小时前
『物流设置+SEO优化』Tigshop开源商城系统 JAVA v5.8.26 版本更新!
java·开源商城系统·tigshop
坚果派·白晓明3 小时前
【鸿蒙PC三方库移植适配框架解读系列】第八篇:扩展lycium框架使其满足rust三方库适配
c语言·开发语言·华为·rust·harmonyos·鸿蒙
花间相见3 小时前
【PaddleOCR教程01】PP-OCRv5 全面指南:从模型架构到实战部署
开发语言·r语言
小短腿的代码世界3 小时前
Qt 股票订单撮合引擎:高频交易系统的核心心脏
开发语言·数据库·qt·系统架构·交互
Tigshop开源商城3 小时前
『订单税率+收货地址校验国家字段』功能上新|跨境运营更高效,Tigshop开源商城系统 JAVA v5.8.23 版本更新
java·开源商城系统·tigshop
REDcker3 小时前
C++变量存储与ELF段布局详解 从const全局到rodata与nm_readelf验证实践
java·c++·面试
pop_xiaoli4 小时前
【iOS】RunLoop
macos·ios·objective-c·cocoa
kobesdu5 小时前
【ROS2实战笔记-19】ROS2 生命周期节点的启动顺序、状态转换陷阱与热备方案
java·前端·笔记·机器人·ros·ros2
谙弆悕博士5 小时前
快速学C语言——第16章:预处理
c语言·开发语言·chrome·笔记·创业创新·预处理·业界资讯
neo_Ggx235 小时前
Maven 版本管理详解:SNAPSHOT、Release 与 Nexus 仓库的区别和影响
java·maven