【问题标题】:Failure executing javac, but could not parse the error:执行 javac 失败,但无法解析错误:
【发布时间】:2015-10-03 15:43:22
【问题描述】:

鉴于以下情况:

> 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。然后我设置我的路径,验证mvn -versionjava -version 吐出相同的版本。但是,我仍然遇到同样的问题。

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

【问题讨论】:

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

标签: java maven


【解决方案1】:

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

【讨论】:

    【解决方案2】:

    您应该检查您的 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/jre ?)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多