2011-09-27 39 views
8

私はAndroid開発用のADTプラグイン付きWindowsおよびEclipse 3.7 Classicを使用しています。Eclipse + FindBugs - 除外フィルタファイルが機能しない

私はFindBugsをインストールしたばかりで、自動生成されたR.javaクラスのバグを発見しました。

このクラスをFindBugsチェックから除外します。

私はxmlファイルにFindBugsのためのフィルタを除外定義することができますので、私は、ファイルDを作成したことを、私を見つけた:私が追加したテキスト

<FindBugsFilter> 
    <Match> 
    <Class name="com.android.demo.notepad3.R$attr" /> 
    </Match> 
</FindBugsFilter> 

とプロジェクト\日食\ FindBugsExculde.xml \このファイルをEclipse - > Window - > Preferences - > Java - > FindBugs - > Filter files - > Add ...ボタンに移動します。

しかし、私は私のプロジェクトを右クリックし、「バグを探す」とき - >私はまだエラー

The class name com.android.demo.notepad3.R$attr doesn't start with an upper case letter 
を参照してください「のバグを探す」 私も

<Class name="com.android.demo.notepad3.R$attr" /> 

を交換しようとしてい

<Class name="~.*" /> 

でもエラーがあります。

私はEclipseを再起動しようとしました。それは、指定されたファイルを使用していないので、私も多分FindBugsの中にバグがあることが考えられますが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 

何をしています?私を助けてください!

答えて

21

私はアンドロイドワークスペースにfindbugs-exclude.xmlを作成し、Eclipse - >ウィンドウ - >環境設定 - > Java - > FindBugs - >フィルタファイル - > "フィルタファイルを除外する "を参照してください。私の最初のエラーは、最初のチェックボックス(インクルードフィルタ:-)セクションにチェックを入れたことでした。

その後、私は手動でfindbugsを起動し、すべてが正常でした。私のファイルの内容は次のとおりです:

<?xml version="1.0" encoding="UTF-8"?> 
<FindBugsFilter> 
    <Match> 
     <Class name="~.*\.R\$.*"/> 
    </Match> 
    <Match> 
    <Class name="~.*\.Manifest\$.*"/> 
    </Match> 
</FindBugsFilter> 

私はeclipse 3.7.1とfindbugs 1.3.9を使用しています。希望が役立ちます。

0

エラーを手動で削除してください。エラーを選択して右クリックし、[削除]を選択します。その後、プロジェクトを再構築します。

findbugsがファイルを正しく無視している可能性がありますが、ファイルで以前に発生したエラーが削除されていることを意味するわけではなく、まだ存在し、手動で削除する必要があります。

+0

残念ながら、これはそうではありません:(私はあなたが示唆したようにそれらを削除しようとしましたが、次回は "バグを見つける"を実行します。私はまた、プロジェクトをクリアしようとしました - エラーは消え去りますが、私が "バグを見つけて"実行すると、それらが表示されます。 – Kluyg

関連する問題