4

AntタスクのFindBugsドキュメントは少し紛らわしいです。私は伝統的にEclipseプラグインを介してFindBugsを使用してきました。このプラグインでは、プロジェクトを選択し、[FindBugs]をクリックしてレポートを取得します。

findbugsAntタスクには、次のようなネストされた要素<class>があります。

分析するクラスを指定する[n]オプションのネストされた要素。

私が見た例に基づくと、FBでは、プロジェクトでFBタスクを実行する前に、最初にプロジェクトをJARする必要があるようです。

class誰かがこれを確認して、要素が何であるかを説明できますか?私のような新参者が理解できるように、説明はかなり曖昧です。

次に、さらに重要なのは、私のプロジェクトが実際にはJava Webアプリ(WAR)ファイルであるという事実です。

したがって、私が間違っていなくて、FBが分析を実行するためにJARを持っている必要がある場合、私の戦略は、<target name="findbugs">ターゲット内にプロジェクトの「一時JAR」を作成し、それを構成することです。コンパイルされたすべてのJavaクラス。これは実行可能ではなく、FBを満足させるだけであり、後のビルドの一部として削除されます。

私はここで基地から離れていますか?Java WebアプリビルダーがAntビルドでFBを使用するための標準的な操作手順は何ですか?前もって感謝します!

4

1 に答える 1

0

FindBugs 自体 (私の場合はバージョン 2.0.1) をダウンロードし、含まれているバッチ ファイルから gui を起動すると、分析のためにプロジェクトに入れることができるファイルの種類が制限されます。[新しいプロジェクト] ダイアログ内で、"jar 、戦争、耳、ジップ、サー」. したがって、.class ファイルを圧縮するだけで十分だと思います。結局、.jar は、フォルダー構造内の .class ファイルの zip に加えて、追加されたマニフェスト ファイルです。

ただし、圧縮されていないソース ファイルを含むフォルダを開いた場合でも、FindBugs は分析を試みます。

[更新ついに FindBugs ant タスクが私のシステムで動作するようになりました。クラスファイルでは間違いなく機能します。ソースコードを読んで解決しなければならないトリッキーな問題がいくつかあるため、実行するにはかなりの作業が必要でした。たとえば、log4j ロギングを使用する場合など、独自の jar を含めるのは難しいです。文書化されていないのに役立つパラメーターがいくつかあります。報告されるバグの最低ランクは非常に高く、私が経験した限り下げることはできません。ご不明な点がございましたら、お気軽にお問い合わせください。喜んでお手伝いさせていただきます。]

于 2012-11-07T17:30:22.510 に答える