第11章 rejarForAnalysis の使用方法

プロジェクトに多くの jar ファイル があったり、 jar ファイルが多くのディレクトリに点在したりする場合は、 rejarForAnalysis スクリプトを使用すると FindBugs の実行が比較的簡単になります。このスクリプトは、数多い jar ファイルを集めて 1 つの大きな jar ファイルに結合します。そうすると、分析時にFindBugs に jar ファイルを設定することが比較的簡単になります。このスクリプトは、 unix システムの 'find' コマンドと組み合わせるととりわけ有用になります ; 次に例を示します。 find . -name '*.jar' | xargs rejarForAnalysis .

また、 rejarForAnalysis スクリプトは巨大なプロジェクトを複数の jar ファイルに分割することに使用できます。プロジェクトのクラスファイルは、複数の jar ファイルに均等に配分されます。これは、プロジェクト全体に対して FindBugs を実行すると時間とメモリ消費が著しい場合に有用です。プロジェクト全体に対して FindBugs を実行する代わりに、 rejarForAnalysis ですべてのクラスを含む大きな jar ファイルを構築します。続いて、 rejarForAnalysis を再び実行して複数の jar ファイルに分割します。そして、各々の jar ファイルに対して順に FindBugs を実行します。その際、 -auxclasspath に最初に 1 つにまとめた jar ファイルを指定してください。

rejarForAnalysis スクリプトに指定することができるオプションを以下に示します :

-maxAge 日数

最後に更新された日からの経過時間を日単位で指定します (指定した日数より古い jar ファイルは無視されます)。

-inputFileList ファイル名

jar ファイル名を記載したテキストファイルを指定します。

-maxClasses クラス数

analysis*.jar ファイル 1 ファイルに対するクラスの最大数を指定します。

-prefix プレフィックス

分析するクラス名のプレフィックスを指定します (例、 edu.umd.cs.) 。