0. 引言
Mac M系列芯片(M1/M2)因为采用了ARM架构,所以传统方式安装的JDK已经不再适用,当然M系列芯片也支持原有AMD架构的JDK运行,但是运行速度远不如适配了ARM架构的了。
所以今天就来带大家安装基于ARM架构的JDK
1. 下载镜像
1.1 Oracle官方镜像源
官方提供的ARM版本镜像源,可选择你需要的版本进行下载安装
我们这里以在Mac上安装JDK11为例,先选择JDK版本,然后再选择系统,最后选择需要的镜像,如下所示提供了压缩包形式或者dmg包形式。这里我们选择下载dmg包形式。
1.2 azul镜像源
azul是针对JDK for ARM适配的最快的了,早在Oracle之前就已经推出了JDK的ARM版。相对官方适配,提供了更多JDK版本的ARM源。
2 安装
2.1 dmg包安装
1. 双击刚刚下载的dmg安装包
2. 双击pkg图标,出现安装界面,点击继续即可
3. 安装成功
3 设置环境变量并配置切换版本命令
如果和我一样安装了多个版本的JDK,需要进行切换时,那么可以按照如下步骤操作
- 首先要知道你jdk的安装目录,mac下的jdk安装目录如下
/Library/Java/JavaVirtualMachines
- 修改环境变量
vi ~/.bash_profile
- 追加以下内容
# <- Switch Java Version Begin -> export JAVA_8_HOME=$(/usr/libexec/java_home -v1.8) export JAVA_11_HOME=$(/usr/libexec/java_home -v11) export JAVA_17_HOME=$(/usr/libexec/java_home -v17) alias java8='export JAVA_HOME=$JAVA_8_HOME' alias java11='export JAVA_HOME=$JAVA_11_HOME' alias java17='export JAVA_HOME=$JAVA_17_HOME' # default to Java 8 java8 # <- Switch Java Version End -> export PATH="$PATH:$JAVA_HOME/bin" export CLASSPATH="$JAVA_HOME/lib"
- 让环境变量生效
# 注意这里要让/etc/profile也生效,否则可能切换jdk失败 source /etc/profile ~/.bash_profile
- 查看当前jdk版本并切换至JDK17
java -version java17 java -version
如果动态切换版本不生效,首先确保修改bash_profile文件后执行的是source /etc/profile ~/.bash_profile,如果还不生效则修改.zshrc文件
vi .zshrc
在最后添加上,让bash_profile文件的配置内容永久生效
source ~/.bash_profile
关于/usr/libexec/下的可执行文件java_home,可以根据版本获取JAVA_HOME目录,感兴趣的可以看下这篇博客mac配置JAVA_HOME最佳方法_mac配置javahome-CSDN博客
参考链接
mac pro M1(ARM)安装:jdk|java|动态切换jdk版本_wx63dbcdbe949dc的技术博客_51CTO博客