Mac版JDK环境配置及Java多版本切换
一、下载JDK包
JDK 各版本可通过 ORACLE 官网下载 ,下载较慢,可以百度搜索 Java Development Kit Mac
找下国内资源 传送门。
选择.dmg 文件,安装,一路 next 即可。
安装之后窗口就消失了,好像什么都没发生过…
那么 Jdk 安装到哪了?我们来找一下:
- 首先打开终端:
command + 空格
,输入**terminal
**,选中终端
并回车)
终端输入命令:
- 移动到根目录:
cd /
- 访达中打开(访达类似文件管理器):
open .
- 依次打开目录:
资源库
->Java
->JavaVirtualMachines
->jdk1.7.0.60.jdk
- 移动到根目录:
可以看到 jdk-17.0.2.jdk
,这就是刚刚安装的 jdk 包了,如果安装了其他版本的 JDK 也可以在这个路径下找到。
也可以通过命令打印出所有 JDK 位置,命令:
/usr/libexec/java_home -V
效果:
二、Mac下Java环境配置(.bash_profile)
JDK 虽然安装成功了,但还需要配置 Mac 下的全局命令环境,否则在其他路径是找不到 java 命令的。配置环境需要编辑 .bash_profile
文件,这是 Mac 配置各种环境变量的地方。
.base_profile 所在位置:
移动到用户根目录:
cd ~
访达中打开:
open .
由于它是隐藏文件,再访达中可以通过快捷键:
command + Shift + .
进行隐藏文件的展示/隐藏:
如果目录下没有
.base_pfofile
文件,可通过终端命令生成:touch .bash_profile
编辑 .base_profile 命令终端命令(和再访达中双击文件一样,都是通过文本编辑打开的):
open -e .bash_profile
如果你习惯用 vim 编辑器,还可以直接通过 vim 编辑(vim 的使用可以看 vim 编辑器教程):
vi .bash_profile
打开 .base_profile 文件后,输入下面内容配置 Java 环境:
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-17.0.2.jdk/Contents/Home
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/jrt-fs.jar:.
export JAVA_HOME
export PATH
export CLASSPATH
编辑后保存,然后使用下面终端命令使 .bash_profile
配置生效?:
source .bash_profile
检查下 Java 环境是否生效,终端输入命令:java -version
可以看到 Java 版本号被正确打印出来,说明 JDK 环境已经配置好了(如果配置了也没打印成功,可以重新打开终端再试)
三、多Java版本切换配置
有时运行不同的 .jar 包可能需要不同版本的 JDK,比如 bugly 的符号表上传工具,它是一个 jar 包,需要在 java7 环境下运行,而我 Mac 配置的 java 环境是 jdk 17,在执行命令 java -jar xxx.jar 时会直接提示出现意外错误(版本过高),所以在不同的时候切换对应的 jdk 环境也是很有必要的
比如我要配置两个 jdk 环境,版本7 和 版本17,那么首先需要按照上面的步骤,将对应的 JDK 环境下载并安装好,在 /Library/Java/JavaVirtualMachines/
路径下找到不同的 JDK 版本:
然后编辑 .bash_profile 文件,修改原本的配置为以下内容?:
# Java环境
export JAVA_7_HOME="/Library/Java/JavaVirtualMachines/jdk1.7.0_60.jdk/Contents/Home -v 1.7"
export JAVA_17_HOME="/Library/Java/JavaVirtualMachines/jdk-17.0.2.jdk/Contents/Home -v 17"
alias jdk7='export JAVA_HOME=$JAVA_7_HOME'
alias jdk17='export JAVA_HOME=$JAVA_17_HOME'
JAVA_HOME=$JAVA_17_HOME
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/jrt-fs.jar:.
export JAVA_HOME
export PATH
export CLASSPATH
保存并激活 .bash_profile 文件:source ~/.bash_profile
重新打开终端,现在在终端中输入 jdk7 或者 jdk17 就会切换版本了,通过 java -version 检查:
如果要配置更多的 jdk 版本,还可以继续编辑 .bash_profile ,比如我的配置:
# Java环境
export JAVA_7_HOME="/Library/Java/JavaVirtualMachines/jdk1.7.0_60.jdk/Contents/Home -v 1.7"
export JAVA_8_HOME="/Users/baize/Library/Java/JavaVirtualMachines/corretto-1.8.0_282/Contents/Home -v 1.8"
export JAVA_11_HOME="/Users/baize/Library/Java/JavaVirtualMachines/corretto-11.0.10/Contents/Home -v 11"
export JAVA_15_HOME="/Library/Java/JavaVirtualMachines/jdk-15.0.1.jdk/Contents/Home -v 15"
export JAVA_17_HOME="/Library/Java/JavaVirtualMachines/jdk-17.0.2.jdk/Contents/Home -v 17"
alias jdk7='export JAVA_HOME=$JAVA_7_HOME'
alias jdk8='export JAVA_HOME=$JAVA_8_HOME'
alias jdk11='export JAVA_HOME=$JAVA_11_HOME'
alias jdk15='export JAVA_HOME=$JAVA_15_HOME'
alias jdk17='export JAVA_HOME=$JAVA_17_HOME'
JAVA_HOME=$JAVA_17_HOME
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/jrt-fs.jar:.
export JAVA_HOME
export PATH
export CLASSPATH