执行javac失败,但无法解析错误:

时间:2015-07-14 20:01:02

标签: java maven

鉴于以下内容:

> mvn clean compile
...
[ERROR] Failure executing javac,  but could not parse the error:
/bin/sh: c:/progra~1/java/jdk1.6.0_24/bin/javac: No such file or directory

检查我的mvnjava版本是否正确:

$mvn -version
Apache Maven 3.3.3 (7994120775791599e205a5524ec3e0dfe41d4a06; 2015-04-22T07:57:37-04:00)
Maven home: /Users/kevin/Downloads/apache-maven-3.3.3
Java version: 1.8.0_51, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.10.4", arch: "x86_64", family: "mac"

$java -version
java version "1.8.0_51"
Java(TM) SE Runtime Environment (build 1.8.0_51-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.51-b03, mixed mode)

我不确定brew已安装mvn的问题,我将其删除并从Apache下载了mvn-...bin.zip。然后我设置我的PATH,验证mvn -versionjava -version吐出相同的版本。但是,我仍然遇到同样的问题。

我查看了前3个(来自搜索)StackOverflow的结果,但还没有进一步:

2 个答案:

答案 0 :(得分:1)

您应检查 JAVA_HOME 变量或 pom.xml 以获取此特定于Windows的路径:c:/progra~1/java/jdk1.6.0_24/bin/javac并将其更改为您的真实JDK安装路径({ {1}}?)。

答案 1 :(得分:0)

当我开始使用较新版本的java时,我遇到了类似的问题。 在你的情况下,Maven使用java 6.尝试设置JAVA_HOME环境变量来纠正 JDK 版本。我猜 JAVA_HOME 指向jdk 1.6。