chofutaroメモ

ソフトウェアエンジニアによるソフトウェアエンジニアのためのメモ書き

cofojaを使ってみました

DbC(Design by Contract)をJavaで実現できるcofojaを使ってみました。

セットアップ

cofojaのページから辿れる”Using Contracts with Eclipse”のとおりにセットアップすれば良いと思うのですが、私の環境では少しだけそのままではダメな点がありました。念のためセットアップ一連のステップを記載しておきます。

ビルドパスにcofojaに必要なライブラリを追加する

プロジェクト・プロパティの中でJavaのビルド・パスにcofoja-1.0-r126.jarとasm-all-3.3.1.jarを追加する。

プロジェクト固有のアノテーション設定を有効にする

プロジェクト・プロパティの中のJavaコンパイラー/アノテーション処理*1で、プロジェクト固有の設定を可能にチェックする。さらにアノテーション処理を使用可能にするにチェック、エディターでの処理を使用可能にするにチェックして、以下のプロセッサ・オプションを設定する。

アノテーション処理のファクトリ・パスを追加する

プロジェクト・プロパティの中のJavaコンパイラ/アノテーション処理/ファクトリ・パスにて、cofoja-1.0-r126.jar絶対パスを指定する。

これでcofojaをエディタ上で使えるようになっているはずです。

VM引数にcofoja-1.0-r126.jarを指定する

VM引数として、-javaagent:<絶対パス>\cofoja-1.0-r126.jar

これでcofojaを実行時に使えるようになっているはずです。

所感

以前([id:hatenadiary:20110319])、Contract4J5を使ってみましたが、エディタ上の支援がある点、セットアップが楽な点、エラーメッセージが簡潔である点を勘案するとcofojaに部があるような気がします。

*1:pleadesの日本語訳は”注釈処理”ですが