Ant > FindBugsを実行

更新日 2012-06-16
広告

antからfindbugsを実行する方法を紹介します。javaをantでコンパイルしている場合、コンパイルに続けてfindbugsによるコード解析を自動的に実行すると、とても楽です。findbugsの基本的な使い方はこちら

antからfindbugsを使うためには、findbugs-ant.jar が必要です。このファイルは、findbugsのダウンロードパッケージの中に含まれています。

次に、findbugsをantのライブラリ群をインストールしたディレクトリにコピーします。私の環境では、/usr/share/ant/lib でした。この場合、build.xmlに以下のタスクを定義すれば、準備完了です。

  <taskdef name="findbugs" classname="edu.umd.cs.findbugs.anttask.FindBugsTask"/>

インストールしたディレクトリに余計なファイルを追加したくない場合は、findbugsのライブラリ群(findbugs-ant.jar含む)を適当なディレクトリに保存し、build.xmlに以下を定義します。

  <property name="findbugs.lib.dir" value="./findbugs-libs"/>

  <path id="findbugs.classpath">
    <fileset dir="${findbugs.lib.dir}">
      <include name="*.jar"/>
    </fileset>
  </path>

  <taskdef name="findbugs" classpathref="findbugs.classpath" classname="edu.umd.cs.findbugs.anttask.FindBugsTask"/>

上記の設定で、findbugs-libsというのは、「適当なディレクトリ」の名前です。

上記のどちらかの準備を行ったら、findbugsを実行するtargetタスクをbuild.xmlに記述します。

  <target name="findbugs">
    <findbugs home="${findbugs.lib.dir}" <!-- findbugsのライブラリ群のディレクトリ -->
	      reportLevel="low"
	      output="html"
	      outputFile="./findbugs-result.html"> <!-- 解析結果のファイル -->
      <class location="./my-java-application.jar"/> <!-- 解析対象のJavaプログラム -->
    </findbugs>
  </target>

解析のレベルや、出力形式は、いくつか選択できます。詳細はfindbugsのサイトをご覧ください。

広告
お問い合わせは sweng.tips@gmail.com まで。
inserted by FC2 system