【发布时间】:2020-09-17 07:07:49
【问题描述】:
我在我的 Mac 上安装了 java 8 和 openjdk 11。 JAVA_HOME 设置为 java 8,但是运行 java --version 时,它指向 openjdk 11。为什么会发生,如何使 java 命令指向 java 8?
运行命令
echo $JAVA_HOME
java --version
输出是
/Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home
openjdk 11.0.8 2020-07-14
OpenJDK Runtime Environment (build 11.0.8+11)
OpenJDK 64-Bit Server VM (build 11.0.8+11, mixed mode)
它是如此有线。
【问题讨论】:
-
which java说什么?你是如何安装 openjdk 11 的? -
哪个java指向/usr/local/opt/openjdk@11/bin/java。是软链接,真正的路径是/usr/local/Cellar/openjdk@11/11.0.8/libexec/openjdk.jdk/Contents/Home/bin/java。我通过 brew 安装 openjdk。
-
那就是问题所在,您的路径在系统路径 java(使用 JAVA_HOME)之前有 java 11。
-
这个答案可能会有所帮助,stackoverflow.com/a/63310708/2067492,因为您使用的是
homebrew,您可能希望坚持让它决定您使用的 java 版本? -
@matt 我知道为什么会这样,非常感谢。