16

背景:我正在尝试使用此处找到的说明为 Windows 构建 Hadoop 。我有OpenJDK 11并且在运行时遇到了以下问题mvn package

Could not resolve dependencies for project org.apache.hadoop:hadoop-annotations:jar:2.5.0-SNAPSHOT: Could not find artifact jdk.tools:jdk.tools:jar:1.6 at specified path C:\Program Files\Java\jdk-11.0.1\..\lib\tools.jar

我意识到tools.jarOpenJDK 11 的 Windows 版本中不存在。我是否也必须从源代码构建它?如何获得tools.jarOpenJDK 11 的 Maven 工件?

4

1 回答 1

18

它在 JDK 9 中被删除。

JEP 220 删除了众所周知且经常引用的 JAR rt.jar 和 tools.jar。根据其描述,“以前存储在 lib/rt.jar、lib/tools.jar、lib/dt.jar 和各种其他内部 jar 文件中的类和资源文件现在将以更有效的格式存储在实现中—— lib 目录中的特定文件。

我建议您使用 Apache Hadoop 的更新版本。如果更新的版本也不支持 Java 11,请将您的 Java 降级到 1.8。

比如目前稳定的 Apache Hadoop 版本是 2.9.2,在它的安装说明中,特别提到了 JDK 9 之前的 JDK。为了正确支持,我建议你使用 OpenJDK 1.8

有一个 Hadoop 3.1.1,如果您发现 Java 版本对您的成功至关重要,我会调查一下。

于 2018-12-10T14:29:42.483 回答