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

Posted

技术标签:

【中文标题】找不到工件 com.sun:tools:jar:0【英文标题】:Could not find artifact com.sun:tools:jar:0 【发布时间】:2019-08-08 00:37:01 【问题描述】:

我正在尝试通过 mvn checkstyle:checkstyle 使用 checkstyle 和 findbugs,但我遇到了这个错误 This error

[ERROR] Failed to execute goal on project my-project: Could not resolve dependencies for project default:my-project:jar:1.1: Could not find artifact com.sun:tools:jar:0 at specified path C:\Program Files\Java\jdk-11.0.2/../lib/tools.jar -> [Help 1]

我的 JDK 中没有 tools.jar(我有 jdk-11.0.2)。

我从 2 小时就开始了,请帮忙:/

【问题讨论】:

将所有错误作为文本添加到问题中。没有图片。 @Leon 编辑您的问题并在 代码块 中添加您的错误而不是图像 尝试升级 checkstyle-plugin 版本,因为此问题已在更高版本中得到解决 哦,对不起,完成了! 【参考方案1】:

tools.jar 从 Java 9+ 中删除

您正在使用JDK 11。在那里找不到tools.jar

JEP 220: Modular Run-Time Imageslib 文件夹中删除了tools.jarrt.jar,截至Java 9。

删除:rt.jar 和 tools.jar

之前存储在lib/rt.jar中的类和资源文件, lib/tools.jar、lib/dt.jar 和其他各种内部 JAR 文件是 现在以更有效的格式存储在特定于实现的文件中 在 lib 目录中。未指定这些文件的格式,并且 如有更改,恕不另行通知。

此更改是添加 Java Platform Module System(也称为 Project Jigsaw)的一部分。

要升级Checkstyle,请使用更高版本,例如:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-checkstyle-plugin</artifactId>
    <version>3.0.0</version>
    <dependencies>
        <dependency>
            <groupId>com.puppycrawl.tools</groupId>
            <artifactId>checkstyle</artifactId>
            <version>8.18</version>
        </dependency>
    </dependencies>
</plugin>

注意内部的dependency 块。

请参阅 Maven 存储库以获取 Apache Maven Checkstyle PluginCheckstyle 的版本。

【讨论】:

那我该怎么办? :// @Leon 升级到不使用这些 JAR 的更新版本的 Checkstyle。 你知道我在哪里可以找到吗? 谢谢。我需要把这个插件块放到&lt;dependency&gt; 对吗? @Leon 哦,太棒了!考虑将答案标记为已接受(根据社区准则),以便其他人现在解决方案有效。谢谢!

以上是关于找不到工件 com.sun:tools:jar:0的主要内容,如果未能解决你的问题,请参考以下文章

为啥找不到android gradle maven发布工件bundleRelease

m2eclipse 找不到 Maven 依赖项,找不到工件

[Android][Maven] 找不到 androidx 工件

MVN 安装,在本地存储库中找不到工件

在多模块项目中找不到工件

不可解析的父 POM:找不到工件