倭マン's BLOG

くだらない日々の日記書いてます。 たまにプログラミング関連の記事書いてます。 書いてます。

Aspectj -- AspectJ プロジェクト(Eclipse) → Maven2 プロジェクト

AspectJ を用いてアスペクト指向開発を行う場合、「Eclipse + AJDT」という環境が最も手軽かと思います。 今回は、この環境で作成した AspectJ プロジェクトMaven2 プロジェクトとして認識されるようにする仕方を見ていきましょう。 これによって、AJDT で作成したプロジェクトのパッケージングや配備を Maven2 を使って行うことが出来るようになります。

手順は概ね以下の通り:

  1. AJDT から ".ajproperties" ファイルを生成する
  2. POM ファイルを作成する

AJDT から ".ajproperties" ファイルを生成する


これは Eclipse 上から行います。 手順は下図の通り:
f:id:waman:20071118101123p:image

「Save build configuration」ダイアログでは、拡張子を省いたファイル名を入力して下さい(拡張子として ".ajproperties" が自動的に付加されます)。 [OK] を選択すると、プロジェクト直下に .ajproperties ファイルが作成されます。

POM ファイルを作成する


次に Maven2 プロジェクトのための POM ファイルを作成します。 この POM ファイルには

  • 「aspectjrt」への依存性を付加する
  • ajdtBuildDefFile プロパティの値として、AJDT によって生成された .ajproperties ファイルを指定する

という設定を付け加えます。 以下の例では、AJDT によって "build.ajproperties" が生成されたとします:

<project>
  ...
  <dependencies>
    <dependency>
      <groupId>aspectj</groupId>
      <artifactId>aspectjrt</artifactId>
      <version>1.5.0</version>
    </dependency>
  </dependencies>
  
  <build>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>aspectj-maven-plugin</artifactId>
        <configuration>
          <ajdtBuildDefFile>build.ajproperties</ajdtBuildDefFile>
        </configuration>
        <executions>
          <execution><goals><goal>compile</goal></goals></execution>
        </executions>
      </plugin>
    </plugins>
  </build>
</project>