环境声明
- Mac是2023款m2芯片
- JDK选择是
azul
平台提供ARM版本
安装JDK1.8
下载
打开下载网址: azul地址、azul快速下载地址
选择对应jdk版本下载:
安装:
- 下载目录双击:
zulu8.74.0.17-ca-jdk8.0.392-macosx_aarch64.dmg
- 按照安装指示安装
验证:
- 打开命令行
- 执行命令: java -version
安装JDK17
下载
打开下载网址: azul地址、azul快速下载地址
选择对应jdk版本下载:
安装:
- 下载目录双击:
zulu17.46.19-ca-jdk17.0.9-macosx_aarch64.dmg
- 按照安装指示安装
验证:
- 打开命令行
- 执行命令: java -version
动态切换
问题
如果你先安装jdk1.8,后装jdk17,那么jdk17就会覆盖jdk1.8
如果你先安装jdk17,后装jdk1.8,那么jdk1.8就会覆盖jdk17
命令行的情况:
- 一部分可是通过绝对路径,调用不同jdk版本【目前可以满足】
- java命令对应版本动态切换不同的jdk版本【未满足】
编程工具(比如IDEA): 通过绝对路径,可以调用不同版本【目前是可以满足】
解决思路
可以通过命令切换JAVA_HOME
对应地址,然后再调用java -version
,就是不同的版本了
实现
获取所有jdk版本路径,执行命令:
/usr/libexec/java_home -V
配置环境
打开环境配置文件:
vi ~/.bash_profile
将下面配置,复制粘贴进去
xxxxxxxxxx
# JDK 配置
export JAVA_17_HOME=/Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home
export JAVA_8_HOME=/Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home
# 默认JDK版本
export JAVA_HOME=$JAVA_8_HOME
# 多版本切换(设置别名,终端输入jdk8/jdk17 自动切换)
alias jdk17="export JAVA_HOME=$JAVA_17_HOME"
alias jdk8="export JAVA_HOME=$JAVA_8_HOME"
生效配置:
source ~/.bash_profile
切换测试:
- 默认是jdk1.8:
java -version
查看是否是jdk1.8 - 切换到jdk17,执行命令:
jdk17
, 在执行:java -version
, 查看是否是jdk17
- 默认是jdk1.8: