Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Eclipse+FindBugs-排除筛选器文件不起作用_Java_Android_Eclipse_Adt_Findbugs - Fatal编程技术网

Java Eclipse+FindBugs-排除筛选器文件不起作用

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

我正在使用Windows和Eclipse3.7Classic以及用于Android开发的ADT插件

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

我想从FindBugs检查中排除此类

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

<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>