我最近下载了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是否实际存在于该目录中,它就在那里。我检查了他们设置好的环境变量。我重新启动系统并再次检查但同样的问题。请让我知道我错过了什么。
答案 0 :(得分:53)
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
答案 1 :(得分:11)
不要在您的JAVA_HOME env变量
中包含bin答案 2 :(得分:3)
答案 3 :(得分:2)
如果您在java home的路径中有空格,请记住在路径中添加引号。 C:\ Program Files \ java \ javaxxx \不起作用 但 " C:\ Program Files \ java \ javaxxx \"确实
答案 4 :(得分:2)
JAVA_HOME = C:\ Program Files \ Java \ jdk(JDK版本号)
示例:C:\ Program Files \ Java \ jdk-10
然后重新启动命令提示符。
答案 5 :(得分:1)
如果您要编译内容,JAVA_HOME应该指向JDK主页而不是JRE主页 - 同样 - 我会尝试将JDK安装在不包含空格的目录中。即使现在不是你的问题,也可能在将来引起问题!
答案 6 :(得分:0)
您将JAVA_HOME指向JRE,这是Java Runtime Environment。运行时环境的bin文件夹中没有java编译器。 您应该下载JDK,它是Java Development Kit。安装完成后,您可以在bin文件夹中看到有一个名为javac.exe的文件。那是你的编译器。