【发布时间】:2021-10-19 15:07:42
【问题描述】:
我正在运行 macOS Mojave 10.14.6。我在 ~/.bash_profile 中有以下相关行:
export PATH="$HOME/.jenv/bin:$PATH"
eval "$(jenv init -)"
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-12.0.1.jdk/Contents/Home
我的主目录中没有竞争的 .bashrc 文件或其他任何文件。在我上次更新该文件后,我退出并重新打开终端并得到:
...$ echo $JAVA_HOME
/Users/myusername/.jenv/versions/system
...$ export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-12.0.1.jdk/Contents/Home
...$ echo $JAVA_HOME
/Users/myusername/.jenv/versions/system
我认为这是由我的 .bash_profile 中的第二行引起的;我不记得为什么要添加它,并且在不知道自己在做什么的情况下犹豫要删除它。我不知道为什么在终端中手动重写变量也不起作用。
无论哪种方式,我的目标是能够在终端中运行 maven,当我这样做时,我得到了
...$ mvn -v
The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE
知道发生了什么吗?
【问题讨论】:
-
你用的是什么外壳? Zsh?
-
您使用的似乎是
jenv。为什么不/usr/libexec/java_home? -
匿名,我正在使用 bash。 @trashgod 你有什么建议?将 .bash_profile 中的一行替换为什么?
-
@FrankHarris:对不起,我不知道
jenv;我希望该链接可以帮助您回忆起为什么将其添加到您的个人资料中。我使用java_home设置$JAVA_HOME仅在特定可执行文件特别需要时。