致命错误编译:找不到tools.jar - maven-compiler-plugin

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了致命错误编译:找不到tools.jar - maven-compiler-plugin相关的知识,希望对你有一定的参考价值。

问题:当我使用maven编译项目时出现以下问题(注意:我正在使用Windows):

无法执行目标org.apache.maven.plugins:maven-compiler-plugin:2.5.1:项目XYZ上的编译(默认编译):致命错误编译:找不到tools.jar:C: java jdk1.8.0 _40 .. lib tools.jar - > [帮助1]

命令行和eclipse(Eclipse STS)都出错 - mvn clean; mvn安装

笔记:

  • 系统env变量JAVA_HOME设置为C: java jdk1.8.0_40
  • C: java jdk1.8.0_40 lib tools.jar就在那里
  • 尝试清除本地maven仓库(.m2) - 仍然发生错误
  • 配置maven编译器插件指向C:/java/jdk1.7.0_75/bin/javac.exe可执行文件,其中source = target = 1.7 - 同样的错误
  • 尝试在eclipse中安装java 1.7.0_75并使用它(但maven仍然用于编译 - 右键单击​​项目,运行as,maven install):同样的错误(即使maven编译器的插件配置的可执行文件设置为C:/的Java / jdk1.7.0_75 /斌/的javac.exe)
答案

已解决的问题:将系统env变量JAVA_HOME设置为Java JDK 1.7修复了该问题。

我试过jdk1.7.0_45和jdk1.7.0_75 - 他们都工作了。

笔记:

  • 我认为在pom.xml中为编译器插件设置编译器可执行文件意味着在所有情况下都使用了可执行文件; 显然它不是 - JAVA_HOME变量在此过度覆盖它 案件。
  • 其他一些人有问题b / c他们的JAVA_HOME被设置为JRE而不是JDK。我的JAVA_HOME for Java 1.8设置为JDK 1.8,但我仍然收到同样的错误。
另一答案

我在eclipse(sts版本)中构建项目时也遇到了类似的问题我发现问题是因为我在2个位置安装了jre并且我在eclipse中配置jre指向纯jre文件夹。因此,只需检查你的jre是否指向jdk中的jre文件夹而不是任何其他jre,因为tools.jar位于jdk / lib中

另一答案

如果找不到tools.jar,请尝试在项目的eclipse依赖项中添加它。

首先,复制tools.jar的位置,它看起来像这样C: Program Files Java jdk1.x.x lib

然后,在eclipse上,右键单击您的项目并转到Properties - > Java Build Path - > Libraries

单击ADD External JARs按钮。

将上面复制的链接粘贴到“文件名”链接栏上,然后单击“确定”按钮。

现在,tools.jar应该列在Libraries上。

单击“确定”关闭窗口。

现在,运行Maven安装。

这对我有用。

另一答案

确保Eclipse指向JDK而不是JRE。为此:Window ==> Preferences ==> Java ==> Installed JRES ==> Add button ==> Standard VM并添加JDK路径。

另一答案

当我将JDK添加到库时,问题就解决了。问题就像tools.jar没有被发现作为jre发行版的一部分

另一答案

确保Eclipse指向JDK而不是JRE。为此:Window ==> Preferences ==> Java ==> Installed JRES ==> Add button ==> Standard VM并添加JDK路径。这很有效。

以上是关于致命错误编译:找不到tools.jar - maven-compiler-plugin的主要内容,如果未能解决你的问题,请参考以下文章

Ionic + Cordova Android 构建错误 - 找不到 tools.jar

Voldemort安装:找不到tools.jar

编译java文件时提示找不到包

编译 C 文件时出错。致命错误:找不到“conio.h”文件

Maven安装hue找不到工件tools.jar

找不到工件 com.sun:tools:jar:0