在我的 mac 上使用多个版本的 Java
Using Multiple versions of Java on my mac
我之前安装过 Java 16 并且正在使用它。现在我需要使用 Java 8。安装 Java 8 后,我意识到必须设置 JAVA_HOME 变量。我使用 macOS Big Sur 版本 11.5.2,我的终端使用 zsh shell。我关注了 youtube 上的一段视频,该视频告诉我执行以下步骤:
- 触摸 .zshrc
- open -e .zshrc
- 在 .zshrc 文件中写下以下命令
export JAVA_HOME='/Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk/Contents/Home'
export PATH = $JAVA_HOME/bin:$PATH
并保存文件
- 来源 ~/.zshrc
但是当我在终端上 运行 第 4 步时,我似乎收到以下消息:
/Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk/Contents/Home not found
但我可以保证目录结构存在。
这是我 运行 时的输出
ls /Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk/Contents/Home
output
使用/usr/libexec/java_home
命令。在我的机器上我有:
% /usr/libexec/java_home -V
Matching Java Virtual Machines (10):
16.0.1 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 16" /Library/Java/JavaVirtualMachines/adoptopenjdk-16.jdk/Contents/Home
16.0.1 (x86_64) "GraalVM Community" - "GraalVM CE 21.1.0" /Library/Java/JavaVirtualMachines/graalvm-ce-java16-21.1.0/Contents/Home
15.0.2 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 15" /Library/Java/JavaVirtualMachines/adoptopenjdk-15.jdk/Contents/Home
14.0.2 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 14" /Library/Java/JavaVirtualMachines/adoptopenjdk-14.jdk/Contents/Home
13.0.2 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 13" /Library/Java/JavaVirtualMachines/adoptopenjdk-13.jdk/Contents/Home
12.0.2 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 12" /Library/Java/JavaVirtualMachines/adoptopenjdk-12.jdk/Contents/Home
11.0.12 (x86_64) "GraalVM Community" - "GraalVM CE 21.2.0" /Library/Java/JavaVirtualMachines/graalvm-ce-java11-21.2.0/Contents/Home
11.0.11 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 11" /Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home
1.8.0_292 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 8" /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
1.8.0_282+07 (x86_64) "GraalVM Community" - "GraalVM CE 21.0.0.2" /Library/Java/JavaVirtualMachines/graalvm-ce-java8-21.0.0.2/Contents/Home
/Library/Java/JavaVirtualMachines/adoptopenjdk-16.jdk/Contents/Home
使用以下方法获取 Java 1.8 主页:
% /usr/libexec/java_home -v 1.8
/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
如果以上所有都适用于您的设置,请将以下内容添加到您的
~/.zshrc
:
export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)
我之前安装过 Java 16 并且正在使用它。现在我需要使用 Java 8。安装 Java 8 后,我意识到必须设置 JAVA_HOME 变量。我使用 macOS Big Sur 版本 11.5.2,我的终端使用 zsh shell。我关注了 youtube 上的一段视频,该视频告诉我执行以下步骤:
- 触摸 .zshrc
- open -e .zshrc
- 在 .zshrc 文件中写下以下命令
并保存文件export JAVA_HOME='/Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk/Contents/Home' export PATH = $JAVA_HOME/bin:$PATH
- 来源 ~/.zshrc
但是当我在终端上 运行 第 4 步时,我似乎收到以下消息:
/Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk/Contents/Home not found
但我可以保证目录结构存在。 这是我 运行 时的输出 ls /Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk/Contents/Home output
使用/usr/libexec/java_home
命令。在我的机器上我有:
% /usr/libexec/java_home -V
Matching Java Virtual Machines (10):
16.0.1 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 16" /Library/Java/JavaVirtualMachines/adoptopenjdk-16.jdk/Contents/Home
16.0.1 (x86_64) "GraalVM Community" - "GraalVM CE 21.1.0" /Library/Java/JavaVirtualMachines/graalvm-ce-java16-21.1.0/Contents/Home
15.0.2 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 15" /Library/Java/JavaVirtualMachines/adoptopenjdk-15.jdk/Contents/Home
14.0.2 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 14" /Library/Java/JavaVirtualMachines/adoptopenjdk-14.jdk/Contents/Home
13.0.2 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 13" /Library/Java/JavaVirtualMachines/adoptopenjdk-13.jdk/Contents/Home
12.0.2 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 12" /Library/Java/JavaVirtualMachines/adoptopenjdk-12.jdk/Contents/Home
11.0.12 (x86_64) "GraalVM Community" - "GraalVM CE 21.2.0" /Library/Java/JavaVirtualMachines/graalvm-ce-java11-21.2.0/Contents/Home
11.0.11 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 11" /Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home
1.8.0_292 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 8" /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
1.8.0_282+07 (x86_64) "GraalVM Community" - "GraalVM CE 21.0.0.2" /Library/Java/JavaVirtualMachines/graalvm-ce-java8-21.0.0.2/Contents/Home
/Library/Java/JavaVirtualMachines/adoptopenjdk-16.jdk/Contents/Home
使用以下方法获取 Java 1.8 主页:
% /usr/libexec/java_home -v 1.8
/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
如果以上所有都适用于您的设置,请将以下内容添加到您的
~/.zshrc
:
export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)