ここでは、Checkstyleを使う上でのちょっとしたテクニックを紹介します。
新しく書いたものほど上に配置していきます。
Checkstyle結果を出力するとき、デフォルトではファイルパスが
絶対パスで出力されてしまいます。
<file name="C:\prog\src\somepackage\Class.java"> <error ... /> </file>
多くの場合、ここには基準ディレクトリからの相対パスを出したいのですが
その実現方法が少々わかにくいので、ここで紹介します。
まず、Checkstyle設定用のXMLファイルを編集します。
<module name="Checker">
<property name="basedir" value="${basedir}"/>
...
</module>
このように、${...} 形式でbasedirプロパティを設定します。
その上で、build.xmlに property 要素を追加します。
<checkstyle ...> <property key="basedir" value="C:\prog\src" /> <fileset ... /> </checkstyle>
このようにすると、設定用XMLファイルの ${basedir} の部分が
Ant実行時に置き換わり、以下のような出力になります。
<file name="somepackage\Class.java"> <error ... /> </file>
一つ注意点を挙げると、basedirの値は「絶対パス」で指定しなければなりません。