【问题标题】:Configure jsr-305 annotations for Eclipse为 Eclipse 配置 jsr-305 注解
【发布时间】:2020-07-30 13:41:10
【问题描述】:

我已经配置了 Eclipse,如屏幕截图所示。

但是我没有收到此代码的错误:

  @Nonnull public static Object test(@CheckForNull Object t) {
    return t;
  }

当我在这段代码上运行 spotbugs 时,我得到:

t 必须为非空但被标记为可空

如何让 Eclipse 使用这些注释?

版本是:Eclipse IDE for Java Developers 版本:2020-03 (4.15.0)

注意。不确定它是否相关,但我正在使用带有 lombok 插件的 eclipse

【问题讨论】:

  • 您是否添加并使用了 spotbugs eclipse 插件?因为eclipse自己不认jsr-305。 (顺便说一句,它已经死了)。我很好奇您在哪个部分配置了这些设置? 更新 有趣...我在 compiler\Errors/warnings 部分找到了它。我会说您需要将 jsr-305.jar 添加到 eclipse 类路径中,以便注释可用于 eclipse...

标签: java eclipse nullpointerexception findbugs spotbugs


【解决方案1】:

您已正确配置它。您必须将 JSR-305.jar 依赖项添加到您的项目中才能使其工作。但是您必须已经这样做了,因为导入已正确解决,对吗?我创建了一个测试项目并正确地看到了一个错误:

如果我删除 @Nonnull 注释,错误就会消失:

一些信息可以在here找到。

【讨论】:

  • 你能分享你的Eclipse版本细节(平台和jdt)吗?您是否以任何特殊方式对其进行了配置?
  • @JakubBochenski 我按照您在屏幕截图中所做的配置进行了配置。我的 Eclipse 版本是 2019-12 (4.14.0) 和 Eclipse IDE for Enterprise Java Developers。
  • 我有一个稍微更新的版本,并且我使用的是不同的基本发行版。机会不大,但也许很重要
猜你喜欢
  • 2016-10-02
  • 2011-01-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-12
  • 2018-04-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多