第3章 FindBugs™ のソールからのビルド

目次

1. 前提条件
2. ソース配布物の展開
3. local.properties の修正
4. Ant の実行
5. ソースディレクトリーからの FindBugs™ の実行

この章では、 FindBugs をソースコードからビルドする方法を説明します。FindBugs を修正することに興味がないのであれば、 次の章 に進んでください。

1. 前提条件

ソースから FindBugs をコンパイルするためには、以下のものが必要です。

[警告]警告

Redhat Linux システムの /usr/bin/ant に同梱されている Ant のバージョンでは、 FindBugs のコンパイルはうまくできませんAnt web サイトからバイナリ配布物をダウンロードしてインストールすることを推奨します。Ant を実行する場合は、 環境変数 JAVA_HOME が JDK 1.5 (またはそれ以降)をインストールしたディレクトリーを指していることを確認してください。

体裁の整った FindBugs のドキュメントを生成したい場合は、以下のソフトウェアも必要となります:

2. ソース配布物の展開

ソース配布物をダウンロードした後に、それを作業用ディレクトリーに展開する必要があります。通常は、次のようなコマンドで展開を行います:

$ unzip findbugs-2.0.3-source.zip

3. local.properties の修正

FindBugs のドキュメントをビルドするためには、 local.properties ファイルを修正する必要があります。このファイルは、 FindBugs をビルドする際に Ant build.xml ファイルが参照します。FindBugs のドキュメントをビルドしない場合は、このファイルは無視してもかまいません。

local.properties での定義は、 build.properties ファイルでの定義に優先します。build.properties は次のような内容です:


# User Configuration:
# This section must be modified to reflect your system.

local.software.home     =/export/home/daveho/linux

# Set this to the directory containing the DocBook Modular XSL Stylesheets
#  from http://docbook.sourceforge.net/projects/xsl/

xsl.stylesheet.home     =${local.software.home}/docbook/docbook-xsl-1.71.1

# Set this to the directory where Saxon (http://saxon.sourceforge.net/)
# is installed.

saxon.home              =${local.software.home}/java/saxon-6.5.5

xsl.stylesheet.home プロパティーには、DocBook Modular XSL スタイルシートがインストールしてあるディレクトリーの絶対パスを指定します。FindBugs ドキュメントを生成しようと考えている場合にのみ、このプロパティーを指定する必要があります。

saxon.home プロパティーには、Saxon XSLT プロセッサーがインストールしてあるディレクトリーの絶対パスを指定します。FindBugs ドキュメントを生成しようと考えている場合にのみ、このプロパティーを指定する必要があります。

4. Ant の実行

ソース配布物の展開、 Ant のインストール、build.properties(local.properties) の修正 (これは任意) およびツール (Saxon など)の環境構築ができれば、 FindBugs をビルドするための準備は完了です。Ant の起動する方法は、単にコマンドを実行するだけです。

$ ant target

target には以下のいずれかを指定します:

build

このターゲットは、 FindBugs のコードをコンパイルします。これは、デフォルトのターゲットです。

docs

このターゲットは、ドキュメントの整形を行います(また、副作用としていくつかのソースのコンパイルも行います。)

runjunit

このターゲットは、コンパイルを行い FindBugs が持っている JUnit テストを実行します。ユニットテストが失敗した場合は、エラーメッセージが表示されます。

bindist

FindBugs のバイナリ配布物を構築します。このターゲットは、 .zip および .tar.gz のアーカイブをそれぞれ作成します。

Ant コマンドの実行後、次のような出力が表示されるはずです。 (この前に Ant が実行したタスクに関するメッセージもいくらか出力されます。):


BUILD SUCCESSFUL
Total time: 17 seconds

5. ソースディレクトリーからの FindBugs™ の実行

build ターゲットの実行が終了すると、バイナリ配布物と同様の状態が作業ディレクトリーに構築されるように FindBugsAnt ビルドスクリプトは記述されています。したがって、4章FindBugs™ の実行FindBugs の実行に関する情報はソース配布物の場合にも応用できます。