質問

私は評価のプロセスにFindBugsいのexcludeFilterのツールな工程の試験パッケージまたは発生するejbスタブ.

しかし以下の

<FindBugsFilter>
<!-- Match any test packages -->
<Match>
    <Package name="~.*\.test"/>
</Match>
<Match>
    <Or>
        <Class name="~.*\.^_*"/>
        <Class name="~.*EJS*"/>
    </Or>
    <Bug pattern="MALICIOUS_CODE"/>
</Match>

に発生するEJBの在まで低下していました。できる人をより良い方向に。

私は除外したいすべての授業が移転すると認められる"_"

例:

com/mycompany/business/admin/ejb/_AdminRemoteHome_Stub.java

com/mycompany/business/admin/ejb/_EJSRemoteStatelessAdminHome_054d51b9_Tie.java

更新フィルターファイルです。

変更したいフィルターファイルを以下のような構造のregxの変化と今のものとして働くことが期待

<FindBugsFilter>
<!-- Match any test packages -->
<Match>
    <Package name="~.*\.test"/>
</Match>
<Match>
    <Class name="~.*\._.*"/>
</Match>
<Match>
    <Class name="~.*?EJS.*"/>       
</Match>

うに戻らなければならないとき、ブラッシュアップし、私regx.

役に立ちましたか?

解決

に関する FindBugFilter,

(じん)がありましたのお考えは、コンパイルしたクラスファイルdirectoriesaではなく、sourcePath?(この その答え).

から Javaの要素名のマッチング 部署:

Name属性のクラス、メソッドまたはフィールドの文字の属性のコンテンツとして解釈される Java正規表現 ることが合の名称は、"Java素子に質問です。

が以下の正規表現をより正確なのだろうか?

    <Class name="~.*\._.*"/>
    <Class name="~.*?EJS.*"/>
  • ".*\._.*"の代わりに".*\.^_*"なので アンカー は試合開始時に文字列を正規表現パターンに適用します。

  • ".*?EJS.*"の代わりに".*EJS*"なので ? のマッチングのぐさ回避の'食'EJS.(プラス"S*"手段"0"を、たく役に立たないと思われはこちら)

他のヒント

私findbugsを除ファイルはありませんが、前述のとおりです。私が使っているのfindbugs-maven-plugin v3.0になります。0になります。る問題解決を行ったビルドを生成findbugsXml.xmlその発行

mvn findbugs:gui

このユーザーインターフェースfindbugs.そして読み込まれると、findbugsXml.xml ファイルナビゲーションに警告し希望の除外を除いて、その保存の排除にfindbugs_exclude.xml.加えたこのmavenプラグインとして

<excludeFilterFile>findbugs_exclude.xml</excludeFilterFile>

生成されたファイルの除外項目は省略してfindbugs報告する。

一端を見つめは、mavenプラグインを追加:

<omitVisitors>UnreadFields</omitVisitors>

ある場合にクラスはは対象外となりますので、ご注意くださいその 内部クラス.かかったとのこと時間を見ることの代わりに

<Match>
    <Class name="com.some.Proto" /> <!--or com.some.Proto$.*-->
</Match>

私は、以下のconfigその内部クラスの場を一つ一つ

<Match>
    <Or>
    <Class name="com.some.Proto$Event" />
    <Class name="com.some.Proto$Msg" />
    <Class name="com.some.Proto$Query" />
    </Or>
</Match>

これまでにいつどのように除外するクラスとそのすべてのサブクラスな手がかりに フィルターお選びいただけるよう、regexのように com.some.Proto$.* だけでは動作しません。と、また $ に正規表現の末にかけて、アジアの中でもfindbugs読んでテキストの文字だと思い、そうでないはずで com.some.Proto\$Query.また、貴重な regex試験機 私に正規表現により説明する毎に文字にします。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top