我的Maven安装遇到问题。我通过各种来源安装了几个旧版本的Java:sdkman,home brew,direct等。因此,我的Java安装似乎很混乱。从那以后,我已经卸载了所有版本并彻底清理了sdkman安装。

从sdkman的全新安装中,跟随我的java和maven,这就是我所得到的。

java --version
openjdk 11.0.6 2020-01-14
OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.6+10)
OpenJDK 64-Bit Server VM AdoptOpenJDK (build 11.0.6+10, mixed mode)

which java
/Users/myname/.sdkman/candidates/java/current/bin/java

echo $JAVA_HOME
/Users/myname/.sdkman/candidates/java/current

which mvn
/Users/myname/.sdkman/candidates/maven/current/bin/mvn

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


有见识吗?

最佳答案

原来的问题是我的主目录中有一个.mavenrc文件,该文件具有自己的JAVA_HOME导出功能。它指向的目录不再存在。这意味着无论我的Java安装是什么样,还是我的.bash_profile中放入什么导出,这些都不会起作用。更新或删除JAVA_HOME导出或删除文件为我解决了此问题。

10-01 14:59