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)
相关推荐
CoderYanger3 小时前
Java EE 进阶:8.MyBatis 操作数据库(入门)(第二弹)
java·数据库·spring boot·spring·面试·java-ee·mybatis
CQU_JIAKE5 小时前
11.7[高体】
java·后端·spring
apcipot_rain6 小时前
C++转Java日记(04)
java·开发语言·c++
特立独行的猫A7 小时前
我给女儿写了个打字练习:一边敲键盘,一边把小学英语单词记牢
java·后端·python
云和数据.ChenGuang8 小时前
LangGraph 异步 Node 的设计与写法实践
开发语言·人工智能·python·机器学习·php
憧憬成为java架构高手的小白8 小时前
LangGraph4j 实战(下)
java
天诰9 小时前
SA-K-11 检索会消失吗与四个未解问题
java·服务器·人工智能·python·机器学习·ai编程
蜗牛一步步往上爬11 小时前
第十六章 C++语言在深度学习中的应用
开发语言·c++·深度学习
这个昵称不容易12 小时前
SpringBoot「衣依」服装销售平台:144个Java文件180个接口,从挑衣服到收货评价整条链路都在
java·springboot·毕设
计算机毕设定制辅导-无忧学长13 小时前
《基于微信小程序的居家医疗陪护预约系统设计与实现》
java·spring boot·微信小程序·uniapp·居家医疗陪护预约系统