通常、CheckstyleはEclipseのプラグインとして
使用する事が多いと思いますが
Ant(コマンドライン)から使用することも可能です。
チェック結果をHTMLに出力したい場合などは
こちらから使用した方が使い勝手が良いでしょう。
Antから使用するときのサンプルをいくつか紹介します。
build.xml を以下のように作成します。
<project name="sample-project" default="checkstyle">
<taskdef resource="checkstyletask.properties"
classpath="/path/to/checkstyle-all-4.1.jar"/>
<target name="checkstyle">
<checkstyle config="/path/to/site/sun_checks.xml">
<fileset dir="src/checkstyle" includes="**/*.java"/>
</checkstyle>
</target>
</project>
CheckstyleはAntのデフォルトタスクでは無いので、
使用にはtaskdef要素による宣言が必要です。
taskdef#classpath の部分は、
checkstyle-all-4.1.jar が格納された場所に応じて変更して下さい。
checkstyle#config には、Checkstyleの設定ファイル(XML形式)を指定します。
Checkstyleにデフォルトで付属するものでも
プロジェクト独自の設定ファイルでも何でも構いません。fileset 要素で、チェックするJavaファイルを指定します。
コンパイルに外部ライブラリ(jar)が必要な場合は、checkstyle#classpathref で定義済みのクラスパスを指定します。
ここら辺の詳しい説明は他のページに任せます。
これで、コマンドラインから
% ant
を実行すればJavaがチェックされ、結果が標準出力に出力されます。
基本的な部分は前項と同じです。
checkstyle要素を以下のように修正します。
<checkstyle config="docs/sun_checks.xml"
failureProperty="checkstyle.failure"
failOnViolation="false">
<formatter type="xml" tofile="checkstyle_report.xml"/>
<fileset dir="src" includes="**/*.java"/>
</checkstyle>
formatter 要素があると、チェック結果がファイルに出力されます。
XML形式で出力されたファイルは、そのままで利用することはまずありません。
通常、次のステップへ進むための中間ファイルとして利用されます。
以下の要素をbuild.xmlに記述します。
<style in="checkstyle_report.xml" out="checkstyle_report.html" style="checkstyle.xsl"/>
style#in には、先程XML形式で出力したファイルを指定します。style#style で指定されたxslファイルの内容に従って
整形されたHTMLファイルが出力されることになります。
xslファイルはCheckstyleバイナリの中にサンプルが含まれているので
これを使うと良いでしょう。
% ant
これで、HTMLファイルが(複数)出力されます。
なお、style#out で指定したファイルに結果が出力されるように見えますが
実際に実行するとこのファイルはサイズ0で生成されるだけです。
これは今回使ったxslファイルによるものなので
初めは「あれ?何も生成されてない」と思うかもしれませんがこれで成功なのです。
index.html ファイルをブラウズすれば、チェック結果がHTMLで表示されます。