Install
openclaw skills install java-switch在 macOS 上自动检测、安装并切换指定版本的 Java,配置 JAVA_HOME 和环境变量,支持持久化配置。
openclaw skills install java-switch在 macOS 上自动切换 Java 版本。使用 Homebrew 安装 OpenJDK,通过 /usr/libexec/java_home 管理多版本,自动配置环境变量。如果指定版本未安装,则自动安装并切换;如果已安装,则直接切换环境变量。
version (required): Java 版本号,如 17, 11, 8, 21 等当用户请求切换 Java 版本时,按以下步骤执行:
if ! command -v brew &> /dev/null; then
echo "Homebrew 未安装,正在安装..."
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
fi
# 列出所有已安装的 Java 版本
/usr/libexec/java_home -V
# 检查特定版本是否已安装
/usr/libexec/java_home -v <version> 2>/dev/null
# 安装指定版本的 OpenJDK
brew install openjdk@<version>
# Homebrew 安装后可能需要链接(根据版本提示)
# 通常路径:/opt/homebrew/opt/openjdk@<version>/libexec/openjdk.jdk (Apple Silicon)
# 或:/usr/local/opt/openjdk@<version>/libexec/openjdk.jdk (Intel)
# 使用 /usr/libexec/java_home 获取指定版本的 JAVA_HOME
export JAVA_HOME=$(/usr/libexec/java_home -v <version>)
export PATH=$JAVA_HOME/bin:$PATH
# 添加到 ~/.zshrc
echo '' >> ~/.zshrc
echo '# Java <version> configuration' >> ~/.zshrc
echo 'export JAVA_HOME=$(/usr/libexec/java_home -v <version>)' >> ~/.zshrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.zshrc
# 使配置生效
source ~/.zshrc
# 验证 Java 版本
java -version
# 验证 JAVA_HOME
echo $JAVA_HOME
用户: 帮我切换到 Java 17
助手:
brew install openjdk@17
export JAVA_HOME=$(/usr/libexec/java_home -v 17)
export PATH=$JAVA_HOME/bin:$PATH
openjdk version "17.0.2" 2021-10-19
OpenJDK Runtime Environment (Homebrew) (build 17.0.2+8)
/opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk/Contents/Home用户: 切换到 Java 11
助手:
openjdk version "11.0.20" 2023-07-18 LTS
/opt/homebrew/opt/openjdk@<version>/libexec/openjdk.jdk/usr/local/opt/openjdk@<version>/libexec/openjdk.jdk/usr/libexec/java_home 用于动态获取 Java 路径,支持多版本管理~/.zshrc8, 11, 17, 21 等主版本号,也支持完整版本号如 17.0.5scripts/switch-java.sh - 可复用的切换脚本export HOMEBREW_BREW_GIT_REMOTE="https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git"/usr/libexec/java_home -V 查看所有已安装版本17 而不是 java17)source ~/.zshrc~/.zshrc 中是否有冲突的配置