You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MacOS(Catalina)系统Java版本混淆:如何确认多版本安装及配置Java11路径

问题解答

1. 版本安装状态确认

你本机已经同时安装了Java 8和Java 11两个版本:

  • 最初执行java -version输出1.8.x版本信息,说明你之前已经安装了Java 8,且当前系统默认的Java路径指向Java 8
  • Homebrew返回结果中java11 ✔的标识,说明Java 11已经通过Homebrew成功安装完成,只是还没有配置到系统默认路径中。

2. 验证已安装的所有JDK版本

执行以下macOS自带的Java_home工具命令,可以查看本机所有已安装的JDK版本和对应安装路径:

/usr/libexec/java_home -V

输出会类似以下格式,你可以清晰看到两个版本的存在:

Matching Java Virtual Machines (2):
    11.0.19 (x86_64) "Oracle Corporation" - "Java SE 11.0.19" /Library/Java/JavaVirtualMachines/jdk-11.0.19.jdk/Contents/Home
    1.8.0_251 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_251.jdk/Contents/Home

3. 指定使用Java 11的方法

3.1 临时生效(仅当前终端窗口有效)

执行以下命令即可在当前窗口直接切换到Java 11:

export JAVA_HOME=`/usr/libexec/java_home -v 11`

执行后可以用java -version验证版本是否已经切换为11。

3.2 永久生效(所有终端窗口默认使用Java 11)

根据你使用的shell类型编辑对应的配置文件:

  • 如果是zsh(macOS Catalina及以后默认shell),编辑~/.zshrc文件
  • 如果是bash,编辑~/.bash_profile或~/.bashrc文件

在文件末尾添加以下内容:

# 设置默认Java版本为11
export JAVA_HOME=`/usr/libexec/java_home -v 11`

保存后执行source ~/.zshrc(对应zsh)或者source ~/.bash_profile(对应bash)让配置立即生效,之后所有新打开的终端默认都会使用Java 11。

3.3 按需切换版本

如果之后需要切回Java 8,只需要把上面命令里的版本号改成1.8即可:

# 临时切换到Java8
export JAVA_HOME=`/usr/libexec/java_home -v 1.8`

内容的提问来源于stack exchange,提问作者leo_liu_junior

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 12:24:07