Findbugs の Filter ファイルを作成していたところ、
繊細な挙動に遭遇して、バグなのかそういうものなのか迷ったので、
具合を備忘として残します。  
BugPattern が認識されない書き方
以下の記載だと、BugPatternは無視され、
Excludeが効かずに記述したパターンに対しての警告が出力されます。  
<FindBugsFilter>
    <Match>
        <Bug pattern="URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD" />
        <Bug pattern="UUF_UNUSED_PUBLIC_OR_PROTECTED_FIELD" />
    </Match>
</FindBugsFilter>
BugPattern が認識される書き方 (カンマ区切り)
以下の記載だと、BugPatternが効き、
対象パターンが除外されます。  
<FindBugsFilter>
    <Match>
        <Bug pattern="URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD,UUF_UNUSED_PUBLIC_OR_PROTECTED_FIELD" />
    </Match>
</FindBugsFilter>
BugPattern が認識される書き方 (OR使用)
以下の記載だと、BugPatternが効き、
対象パターンが除外されます。  
<FindBugsFilter>
    <Match>
        <Or>
            <Bug pattern="URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD" />
            <Bug pattern="UUF_UNUSED_PUBLIC_OR_PROTECTED_FIELD" />            
        </Or>
    </Match>
</FindBugsFilter>
参考サイト
以上です。
コメント