【问题标题】:Does anyone know how to fix this error to install Findbugs into Netbeans 8.2?有谁知道如何修复此错误以将 Findbugs 安装到 Netbeans 8.2 中?
【发布时间】:2020-05-12 17:49:15
【问题描述】:

在将 Findbugs 安装到 Netbeans 8.2 时出现以下错误:

"There were some problems while storing Establishing a connection …
Cause: Cannot resolve external reference to m2:/org:ow2:asm:asm-debug-all:5.0.2:jar"

我已尝试卸载 NetBeans 8.2 并删除与安装相关的任何内容以进行全新安装,但没有成功,并且我尝试了最新版本的 NetBeans 11.3,但我发现它没有可用的 Findbugs。我需要一个学校项目的插件,也没有人能帮助我解决这个问题。任何帮助将不胜感激。

我使用的是 Windows 10 电脑。

谢谢。

【问题讨论】:

    标签: netbeans findbugs


    【解决方案1】:

    错误原因

    发生错误是因为当您下载插件时,NetBeans 也会尝试下载其他依赖项。下载 jar 包的链接写在 nbm 包中。

    比如其中一个依赖是asm-debug-all-5.0.2.jar,链接是:

    http://repo1.maven.org/maven2/org/ow2/asm/asm-debug-all/5.0.2/asm-debug-all-5.0.2.jar. 
    

    无法再使用 HTTP 链接访问 maven 存储库。你可以阅读更多关于它的信息here。 所以基本上,您无法安装该插件,因为该插件已过时并且包含用于从 maven repo 下载依赖项的无效链接。

    在解决问题之前,请考虑改用 SpotBug,因为 FindBug 已过时且不再积极维护,有关详细信息,请参阅另一个 answer。另外,请记住它仅适用于 JDK8。

    如何解决?

    要解决这个问题,你需要稍微弄点插件。

    1. 您需要两个插件 FindBug Libs (org-netbeans-libs-findbugs.nbm) 和 FindBug Integration (org-netbeans-modules-findbugs.nbm)。使用这些链接下载它们:

    https://updates.netbeans.org/netbeans/updates/8.2/uc/final/certified/82/extra/org-netbeans-modules-findbugs.nbm

    https://updates.netbeans.org/netbeans/updates/8.2/uc/final/certified/82/extra/org-netbeans-libs-findbugs.nbm

    1. 手动解压缩 org-netbeans-libs-findbugs.nbm,就像它是一个简单的 zip 文件一样。
    2. 编辑 org-netbeans-libs-findbugs\netbeans\modules\ext 提取文件夹中的文件。在每个文件中,您需要将链接从 http 更改为 https。
    3. 编辑清单文件 org-netbeans-libs-findbugs\META-INF\MANIFEST.MF。您需要删除所有包含 CRS 校验和的行。编辑后应该只包含以下几行:

      清单版本:1.0 Ant 版本:Apache Ant 1.9.2 创建者:1.8.0_45-b14(甲骨文公司)

    4. 删除 org-netbeans-libs-findbugs\META-INF 中的其他两个文件(ORACLE_C.RSA 和 ORACLE_C.SF)。

    5. 再次压缩。

    之后,该文件就可以手动安装到 Net Beans 中了。或者,您可以从here 下载文件。我已经使用步骤修改了插件。

    如何安装使用?

    1. 转到 Windows -> 插件 -> 已下载 -> 添加插件
    2. 手动添加修改后的org-netbeans-libs-findbugs.nbm文件,点击安装。
    3. 然后添加 org-netbeans-modules-findbugs.nbm 并点击安装。
    4. 安装时显示下载插件,但实际上只下载依赖项。这可能需要一些时间。
    5. 之后,在项目树中选择你的项目,确保它是之前编译过的。转到 Source -> Inspect,在 Configuration 中选择 FindBus。

    1. 点击检查后,您的报告就准备好了。 它适用于 NetBeans 11.3 和 8.2。确保您使用的是JDK8 with NetBeans。我不确定它是否适用于最新版本的 JDK。

    这是一个在 11.3 上使用 JDK8 在某些 NetBeans 模块上运行它的示例:

    【讨论】:

    • 感谢您的详细解答,非常感谢您的帮助!!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-21
    • 1970-01-01
    • 2014-08-26
    相关资源
    最近更新 更多