Mac多版本jdk管理
在 mac os 系统管理多个不同版本的jdk环境,实现灵活切换。
下载jdk,直接在idea里去下载,不用自己配置,简单省事


选择合适的版本与供应商

下载好jdk后,查看一下是否下载成功

编辑脚本
open -e ~/.zshrc在脚本的最后面追加如下信息,脚本信息如下
# ==================== Java 环境配置 ====================
# 设置默认 Java 版本为 17.0.15
export JAVA_HOME=$(/usr/libexec/java_home -v 17.0.15 2>/dev/null || /usr/libexec/java_home)
export PATH="$JAVA_HOME/bin:$PATH"
# 快速切换 Java 版本函数
jdk() {
case $1 in
8|1.8)
local version="1.8.0_442"
;;
17)
local version="17.0.15"
;;
21)
local version="21.0.9"
;;
list)
echo "可用版本:"
/usr/libexec/java_home -V
return 0
;;
*)
echo "用法: jdk [8|17|list]"
echo "当前版本:"
java -version
return 1
;;
esac
export JAVA_HOME=$(/usr/libexec/java_home -v "$version" 2>/dev/null)
if [ -z "$JAVA_HOME" ]; then
echo "错误: Java $version 未安装"
return 1
fi
# 更新 PATH,确保 Java bin 目录在最前面
export PATH="$JAVA_HOME/bin:${PATH//$JAVA_HOME\/bin:/}"
echo "✓ 已切换到 Java $version"
echo "路径: $JAVA_HOME"
java -version
}
# 显示当前 Java 信息函数
java-info() {
echo "=== Java 环境信息 ==="
echo "JAVA_HOME: $JAVA_HOME"
echo "Java 版本:"
java -version 2>&1 | head -3
echo "编译器版本:"
javac -version 2>&1
echo "可用版本:"
/usr/libexec/java_home -V
}
# 设置别名
alias java8='jdk 8'
alias java17='jdk 17'
alias java21='jdk 21'
alias javainfo='java-info'顺便加上maven的配置信息
# ==================== Maven 环境配置 ====================
export MAVEN_HOME="/Users/gaohan/Apply/apache-maven-3.9.11"
export PATH="$MAVEN_HOME/bin:$PATH"保存退出后,再执行如下依赖加载配置
source ~/.zshrc测试切换java版本
命令 jdk 8

命令 jdk 17

命令 jdk 21

测试打印当前java环境信息

