Eclipse + FindBugs - 排除过滤器文件不起作用

Klu*_*uyg 8 java eclipse android findbugs adt

我正在使用Windows和Eclipse 3.7 Classic和ADT插件进行Android开发.

我刚刚安装了FindBugs,它在自动生成的R.java类中发现了一个错误.

我想从FindBugs检查中排除这个类.

我发现我可以在xml文件中为FindBugs定义排除过滤器,所以我创建了一个带文本的文件D:\ Projects\eclipse\FindBugsExculde.xml

<FindBugsFilter>
  <Match>
    <Class name="com.android.demo.notepad3.R$attr" />
  </Match>
</FindBugsFilter>
Run Code Online (Sandbox Code Playgroud)

我已将此文件添加到Eclipse - > Window - > Preferences - > Java - > FindBugs - > Filter files - >"Add ..."按钮附近的"Exclude filter files"部分.

但是当我右键单击我的项目并选择"Find Bugs" - >"Find Bugs"时,我仍然会看到错误

The class name com.android.demo.notepad3.R$attr doesn't start with an upper case letter
Run Code Online (Sandbox Code Playgroud)

我甚至试图更换

<Class name="com.android.demo.notepad3.R$attr" />
Run Code Online (Sandbox Code Playgroud)

<Class name="~.*" />
Run Code Online (Sandbox Code Playgroud)

但仍然存在错误.

我试图重启Eclipse - 没有运气.我甚至认为可能在FindBugs中有一个Bug,所以它不使用指定的文件但是SysinternalsSuite的Procmon.exe显示它每次执行FindBugs时都会使用它:

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
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?请帮我!

Chr*_*ipp 22

遵循Jenkins的指令,我findbugs-exclude.xml在我的android工作区中创建了一个并通过Eclipse - > Window - > Preferences - > Java - > FindBugs - > Filter files - >"Add ..."按钮添加它,位于"Exclude filter files"部分附近找到虫子.我的第一个错误是我勾选了第一个复选框(包含过滤器:-)部分).

然后我开始手动findbugs,一切都很好.我的文件内容是:

<?xml version="1.0" encoding="UTF-8"?>
<FindBugsFilter>
    <Match>
        <Class name="~.*\.R\$.*"/>
    </Match>
    <Match>
    <Class name="~.*\.Manifest\$.*"/>
    </Match>
</FindBugsFilter>
Run Code Online (Sandbox Code Playgroud)

我正在使用eclipse 3.7.1和findbugs 1.3.9.希望有所帮助.