【发布时间】:2018-04-10 00:24:30
【问题描述】:
我们在一个奇怪的 unix-ish 开发平台下使用 maven 时遇到了一些问题。 maven 编译器插件抱怨由于默认安装的 java 中奇怪的 JDK/JRE 混淆而无法找到 tools.jar。
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:
2.5.1:compile (default-compile) on project xyz: Fatal error compiling:
tools.jar not found: our-java-home-dir/../lib/tools.jar -> [Help 1]
../lib/tools.jar 应该是 lib/tools.jar。 java安装(Java 7)似乎是一个JDK,但不知何故java将它检测为只是一个JRE,因此造成混乱。在查看 java 代码在做什么时,它一定认为我们有一个 JRE 安装并且期望 JAVA_HOME 指向真正的 JAVA_HOME 的 jre 子目录。似乎没有多少复制、符号链接或其他黑客手段可以使我们使 ../lib 与 lib 相同。
我们已经看到很多关于 intertubes 的类似问题,但都没有太大帮助。我们无法像在其他平台上那样重新安装 Java 或任何解决方案,但它应该是一个完整的 JDK,并且在 bin 子目录中包含所有 j*tools。
【问题讨论】:
-
你用的是哪个java版本?
-
我们使用的是 java 7。
-
tools.jar 的使用必须在某个地方手动完成..检查您的 pom 文件...此外我建议升级您的插件版本...
-
maven 编译器插件@khmarbaise 需要
tools.jar。它编译东西。 :-)
标签: maven maven-compiler-plugin tools.jar