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

执行javac失败,但无法分析错误:,java,maven,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 检查我的mvn和java版本是否正确: $mvn -version Apache Maven 3.3.3 (7994120775791599e205

鉴于以下情况:

> 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
检查我的
mvn
java
版本是否正确:

$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
,我将其删除并从中下载了
mvn-…bin.zip
。然后我设置了路径,验证了
mvn-version
java-version
是否给出了相同的版本。但是,我仍然有同样的问题

我查看了前3名(来自搜索)StackOverflow结果,但没有得到进一步的信息:


您应该检查JAVA_HOME变量或pom.xml,查看此Windows特定路径:
c:/progra~1/JAVA/jdk1.6.0_24/bin/javac
,并将其更改为实际的JDK安装路径(
/Library/JAVA/JavaVirtualMachines/jdk1.8.0_51.JDK/Contents/HOME
)当我开始使用较新版本的java时,我遇到了类似的问题。
在您的例子中,Maven使用的是Java6。尝试将JAVA_HOME环境变量设置为更正JDK版本。我猜javahome指向的是jdk1.6。

Maven认为它运行的是java6(无论如何,对于那个项目)。该项目是否有一个特定的JVM版本,它是用来编译的?在我的例子中,一个依赖项目应该是
JDK1.6
。为了解决这个问题,我删除了我的
~/.m2/repository/*
,然后用
mvn clean compile-Ddefault.java.version=1.7-Ddefault.java.home=/usr/