1

このプラグインでfindbugsとmavenを実行していますが、Eclipseで最大設定が20のfind bugsを実行しても、ビルドは失敗します。バグは0になります。今では33で失敗します。

 <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>findbugs-maven-plugin</artifactId>
    <version>2.0.1</version>
    <configuration>
      <threshold>Ignore</threshold>
      <xmlOutput>true</xmlOutput>
    </configuration>
    <executions>
      <execution>
        <phase>verify</phase> 
        <goals>
          <goal>check</goal> 
        </goals>
      </execution>
    </executions>
  </plugin>

2つの質問:

EclipseFindbugsプラグインとMavenFindbugsプラグインの間にこのような不一致があるのはなぜですか?

どういうわけか、EclipseFindbugsにMavenFindbugsから生成されたfindbugscheck.xmlをロードさせて、コードが自動的に強調表示されるようにすることはできますか?xmlファイルを介して釣りをするのは非常に面倒です。

4

1 に答える 1

1

Eclipse Findbugsプラグインとfindbugs-maven-pluginの間の不一致は、Findbugsユーティリティの異なるバージョンを使用するこれら2つのオファリングが原因である可能性があります。これらの各オファリングは、FindBugsユーティリティ(ここにあります)を実行してから、ユーティリティの出力を解析して結果を表示します。findbugs-maven-plugin-2.0.1は、Findbugs1.3.8に基づいています。EclipseプラグインがどのバージョンのFindbugsに基づいているかはわかりません。

Findbugsユーティリティは、結果に影響を与える可能性のあるいくつかのコマンドラインオプション(-effort:max、-effort:minなど)をサポートしています。Eclipse Findbugsプラグインとfindbugs-maven-pluginは、異なるコマンドラインオプションを提供している可能性があり、結果に不一致が生じます。両方がこれらのコマンドラインオプションの構成を提供する場合、この不一致を解消できる可能性があります。

Eclipse Findbugsプラグインは、Eclipse内のプラグインのビューで結果のフィルタリングを提供します。フィルタリングは、プラグインのビューでツールバーアイコンとしてアクセスできます(現在、開発ボックスにいないため、この場所が100%確実ではありません)。

また、FindbugsのWebサイトから:

「FindBugsはプラグインアーキテクチャをサポートしており、誰でも新しいバグ検出器を追加できます。」

これは、Eclipseプラグインが他のバグ検出器をプラグインしていることを意味している可能性がありますが、これが当てはまるかどうかはわかりません。指摘される可能性があります。EclipeFindbugsプラグインにmavenビルドからfindbugscheck.xmlをロードさせる方法を見つけたことがありません。

ETA:findbugsの結果xmlを手動で調べる代わりに、Findbugs GUIを実行し、それを使用して結果をロードおよび表示してみることができます。

于 2012-01-19T03:17:33.317 に答える