gpt4 book ai didi

java - maven报错JAVA_HOME环境变量未正确定义的解决方法

转载 作者:塔克拉玛干 更新时间:2023-11-01 23:02:28 28 4
gpt4 key购买 nike

当我在虚拟环境中检查 maven 的版本时,出现以下错误:

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

但是,我可以在虚拟环境之外打印 maven 的版本

mvn -version
Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T00:58:13-07:00)
Maven home: /usr/local/Cellar/maven/3.5.2/libexec
Java version: 1.8.0_152, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.11.6", arch: "x86_64", family: "mac"

我在 ~/.bash_profile 中使用了 set

set JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk
set PATH=$JAVA_HOME/jre/bin:$PATH

我不明白这个错误是因为 JAVA_HOME 指向的是 JDK 而不是 JRE?感谢您的回答!

最佳答案

这是不正确的:

set JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk

请注意,mvn 的输出告诉您 Java 主目录的位置是 /Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre .所以JDK home的位置大概是/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home

其次,您需要导出变量,而不仅仅是设置它。

这样写:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home

更新~/.bash_profile后,测试设置是否正确,启动一个新的 shell,并检查 echo $JAVA_HOME 的输出。

关于java - maven报错JAVA_HOME环境变量未正确定义的解决方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47243223/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com