Java Eclipse+FindBugs-排除筛选器文件不起作用
我正在使用Windows和Eclipse3.7Classic以及用于Android开发的ADT插件 我刚刚安装了FindBugs,它在自动生成的R.java类中发现了一个bug 我想从FindBugs检查中排除此类 我发现我可以在xml文件中为FindBugs定义排除过滤器,因此我创建了一个文件D:\Projects\eclipse\FindBugsExculde.xml,其中包含文本Java Eclipse+FindBugs-排除筛选器文件不起作用,java,android,eclipse,adt,findbugs,Java,Android,Eclipse,Adt,Findbugs,我正在使用Windows和Eclipse3.7Classic以及用于Android开发的ADT插件 我刚刚安装了FindBugs,它在自动生成的R.java类中发现了一个bug 我想从FindBugs检查中排除此类 我发现我可以在xml文件中为FindBugs定义排除过滤器,因此我创建了一个文件D:\Projects\eclipse\FindBugsExculde.xml,其中包含文本 <FindBugsFilter> <Match> <Class na
<FindBugsFilter>
<Match>
<Class name="com.android.demo.notepad3.R$attr" />
</Match>
</FindBugsFilter>
我甚至试着去替换
<Class name="com.android.demo.notepad3.R$attr" />
我做错了什么?请帮帮我 请手动删除错误。选择错误并单击鼠标右键,选择“删除”。然后重建您的项目
可能findbugs正确地忽略了该文件,但这并不意味着它以前在该文件上引发的错误已被删除,它们仍然存在,您必须手动删除它们。按照中的指令,我在android工作区中创建了一个findbugs-exclude.xml,并通过Eclipse->Window->Preferences->Java->findbugs->Filter files->Add添加了它。。。单击“排除过滤器文件”部分附近的按钮以查找DBUGS。我的第一个错误是,我勾选了include filter:-部分的第一个复选框 然后我开始手动查找Bugs,一切正常。我的文件的内容是:
<?xml version="1.0" encoding="UTF-8"?>
<FindBugsFilter>
<Match>
<Class name="~.*\.R\$.*"/>
</Match>
<Match>
<Class name="~.*\.Manifest\$.*"/>
</Match>
</FindBugsFilter>
我正在使用Eclipse3.7.1和FindBugs1.3.9。希望对您有所帮助。当文件路径不正确或XML文件无效时,可能会自动忽略筛选文件。尝试使用来自的XSD验证筛选器
在Eclipse 4.4.2上出现此问题。我只想提醒新手,默认设置是,因此,如果要在当前项目中应用过滤器,则不能仅在默认设置中排除过滤器: 相反,您应该在设置中排除过滤器: 顺便说一句,一旦插件安装并重新启动,Android Studio可能会在右下角弹出对话框,您只需单击该链接Add R.class File Filter,它就会自动为您生成正确的xml代码
不幸的是,事实并非如此:我曾尝试按照您的建议删除它们,但下次运行“查找bug”时它们会再次出现。我也尝试过清理这个项目——错误会消失——但是如果我运行Find bug,它们就会出现。我想我最初的问题现在已经无关紧要了,因为Android Studio是基于JetBrains IntelliJ而不是Eclipse的。但希望你的答案能帮助人们在谷歌上搜索类似的问题,所以我投了更高的票:
<Class name="~.*" />
ProcessName Operation Path Result
javaw.exe QueryOpen D:\Projects\eclipse\FindBugsExculde.xml SUCCESS
javaw.exe QueryOpen D:\Projects\eclipse\FindBugsExculde.xml SUCCESS
javaw.exe CreateFile D:\Projects\eclipse\FindBugsExculde.xml SUCCESS
javaw.exe CreateFile D:\Projects\eclipse\FindBugsExculde.xml SUCCESS
javaw.exe QueryFileInternalInformationFile D:\Projects\eclipse\FindBugsExculde.xml SUCCESS
javaw.exe CloseFile D:\Projects\eclipse\FindBugsExculde.xml SUCCESS
javaw.exe ReadFile D:\Projects\eclipse\FindBugsExculde.xml SUCCESS
javaw.exe CloseFile D:\Projects\eclipse\FindBugsExculde.xml SUCCESS
<?xml version="1.0" encoding="UTF-8"?>
<FindBugsFilter>
<Match>
<Class name="~.*\.R\$.*"/>
</Match>
<Match>
<Class name="~.*\.Manifest\$.*"/>
</Match>
</FindBugsFilter>