我正在尝试使用findbugs 1.3.2的注释.
我edu.umd.cs.findbugs.annotations.NonNull
在一个简单的测试中使用了注释,它工作正常.
但是,现在我有一个大型项目,由子模块组成,使用maven,我通过在一些java文件中导入该注释得到以下编译错误:
com.sun.tools.javac.code.Symbol$CompletionFailure: class file for javax.annotation.meta.When not found
Run Code Online (Sandbox Code Playgroud)
可能是什么问题?我尝试在所有子模块中添加findbugs依赖项.也许这是与jsr305的冲突?我看到我们的一个依赖项使用jsr305 1.3.9.
根据我的经验,当您使用@NunNull
并且jsr305.jar不在类路径上时,总会发生此错误.要使用findbugs注释,必须将annotations.jar和jsr305.jar添加到类路径中.
一些注释(我正在考虑@SuppressWarnings
)可以在没有jsr305.jar的情况下使用,但@NonNull
肯定需要它.
(你在你的问题中提到过jsr305.jar,但是你没有明确说明你已经检查过了.而且,当搜索错误信息时,人们会在这里登陆,他们需要添加jsr305.jar.)一个版本的jsr305.jar应该在类路径上.
归档时间: |
|
查看次数: |
4548 次 |
最近记录: |