【问题标题】:Error in setting JAVA_HOME设置 JAVA_HOME 时出错
【发布时间】:2025-12-18 02:25:01
【问题描述】:

我最近下载了 Maven,并按照this 页面上的说明进行操作。我已经在我的机器上安装了 ant。 现在,如果我想验证 Maven 是否已完美安装,它会给我错误,即 JAVA_HOME 设置不正确,但同样适用于 ANT。

For Maven I tried :
1. open cmd
2. type mvn -version
3. Error appeared :
C:\Users\Admin>mvn -version

ERROR: JAVA_HOME is set to an invalid directory.
JAVA_HOME = "C:\Program Files\Java\jre7\bin"
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation

For ANT I tried and worked :
1. open cmd
2. type mvn -version
3. Apache Ant(TM) version 1.9.1 compiled on May 15 2013

我去目录检查 java.exe 是否真的存在于该目录中,并且它在那里。我检查了他们设置好的环境变量。我重新启动系统并再次检查,但同样的问题。请让我知道我错过了什么。

【问题讨论】:

  • 在系统环境中设置有效的JAVA_HOME路径
  • 试试这个..C:\ YourFolder >set path=C:\Program Files\Java\jdk1.7.0_09\bin;,在这种情况下,我的jdk版本是1.7.0_09 或者你可以看看this question。欢迎来到*.. ^^
  • 使用 Maven,您的 JAVA_HOME 不能包含“bin”,只需 ...\jdk1.7.0_09\ 就足够了。
  • 如果您做的一切都正确,但仍然无法正常工作,请尝试重新启动您的机器

标签: java maven installation path-variables


【解决方案1】:

JAVA_HOME 应该指向 jdk 目录而不是 jre 目录。 JAVA_HOME 也应该指向 home jdk 目录,而不是 jdk/bin 目录。

假设你的程序文件目录中安装了 JDK,那么你需要像这样设置 JAVA_HOME:

JAVA_HOME="C:\Program Files\Java\jdkxxx"

xxx是jdk版本

点击此链接了解有关设置 JAVA_HOME 的更多信息:

http://docs.oracle.com/cd/E19182-01/820-7851/inst_cli_jdk_javahome_t/index.html

【讨论】:

【解决方案2】:

JAVA_HOME = C:\Program Files\Java\jdk(JDK 版本号)

示例:C:\Program Files\Java\jdk-10

然后重新启动命令提示符就可以了。

【讨论】:

  • 谢谢你。一直在为此苦苦挣扎几个小时,直到我阅读了重新启动部分。不要忘记重新启动,因为即使您更改了很多次它也无法正常工作。
  • 谢谢。设置后挣扎了几分钟。需要重启。
【解决方案3】:

按照here中的说明进行操作。

JAVA_HOME应该是这样的

JAVA_HOME=C:\Program Files\Java\jdk1.7.0_07

【讨论】:

  • 路径周围是否需要引号?
【解决方案4】:

不要在你的 JAVA_HOME 环境变量中包含 bin

【讨论】:

    【解决方案5】:

    如果您的 java home 路径中有空格,请记住在路径中添加引号。 C:\Program Files\java\javaxxx\ 不起作用 但 "C:\Program Files\java\javaxxx\" 可以。

    【讨论】:

    • 这没有提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方发表评论 - 您可以随时评论自己的帖子,一旦您有足够的reputation,您就可以comment on any post
    • 啊啊啊我明白了。只是想把它留在这里,因为我最终遇到了 Ruchira Gayan 上面的答案的问题。 “JAVA_HOME 应该是这样的 JAVA_HOME=C:\Program Files\Java\jdk1.7.0_07” 我不得不用引号将路径括起来。但评论指出。当我有任何问题时会回来。
    【解决方案6】:

    如果你要编译东西,JAVA_HOME 应该指向 JDK 主目录而不是 JRE 主目录,同样 - 我会尝试将 JDK 安装在不包含空格的目录中。即使这不是您现在的问题,也可能会在将来引起问题!

    【讨论】:

      【解决方案7】:

      您将 JAVA_HOME 指向 JRE,即 Java 运行时环境。运行时环境的 bin 文件夹中没有 java 编译器。 您应该下载 JDK,它是 Java 开发工具包。安装后,您可以在 bin 文件夹中看到一个名为 javac.exe 的文件。那是你的编译器。

      【讨论】: