倭マン's BLOG

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

AspectJ プロジェクトの POM ファイル

前回 Maven2 主導で AspectJ プロジェクトを作成する方法を見ました。 しかし、この手順は結構面倒臭いので、チョットでも手間が省けるように、POM ファイルのテンプレートを載せておきます(ダウンロードはこちらから)。

POM ファイルのテンプレート

<?xml version="1.0"?>
<project>
    <modelVersion>4.0.0</modelVersion>
    <groupId>${groupId}</groupId>
    <artifactId>${artifactId}</artifactId>
    <version>${version}</version>
    
    <dependencies>
        <dependency>
            <groupId>aspectj</groupId>
            <artifactId>aspectjrt</artifactId>
            <version>1.5.3</version>
        </dependency>
        
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
    
    <build>
        <plugins>
            <plugin>
                <artifactId>maven-eclipse-plugin</artifactId>
                <configuration>
                    <projectnatures>
                        <projectnature>org.eclipse.ajdt.ui.ajnature</projectnature>
                        <projectnature>org.eclipse.jdt.core.javanature</projectnature>
                    </projectnatures>
                    <buildcommands>
                        <buildcommand>org.eclipse.ajdt.core.ajbuilder</buildcommand>
                    </buildcommands>
                </configuration>
            </plugin>
            
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>aspectj-maven-plugin</artifactId>
                <configuration>
                    <encoding>UTF-8</encoding>
                    <complianceLevel>1.5</complianceLevel>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>compile</goal>
                            <!--goal>test-compile</goal-->
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>

幾つか注意を。

  • ${groupId}, ${artifactId}, ${version} は適切に変更してください。
  • ソース・コードのエンコーディングUTF-8 に、complianceLevel は 1.5 に設定されています。 変更したい場合は<plugin> 要素下を変更してください。
  • 通常の Maven2 プロジェクトと同様に、コマンド「mvn eclipse:eclipse」によって Eclipse プロジェクト用の設定ファイルを生成することが出来ます。 このプロジェクトを Eclipse 上に読み込む(import する)と、自動的に AspectJ プロジェクトとして認識されます*1

この POM ファイルのテンプレートを使うと、「AspectJ プロジェクトの生成」と「プロジェクトの依存性の変更」が以下のように少し簡単になります(通常の Java プロジェクトとほぼ同じ)。

AspectJ プロジェクトの生成

  1. [Maven2]プロジェクト・テンプレートを作成する
  2. [Maven2]POM ファイルのテンプレートを pom.xml と置き換えて、適切に修正する
  3. [Maven2](必要なら)POM ファイルで使用するライブラリに対する依存性を付加する
  4. [Maven2]Eclipse プロジェクトの設定ファイルを生成する
  5. [ Eclipse ]プロジェクトを読み込む

プロジェクトの依存性の変更

  1. [Maven2]POM ファイルに依存性を追加する
  2. [Maven2]Eclipse プロジェクトの設定ファイルを生成する
  3. [ Eclipse ]プロジェクトを「Reflesh」する

*1:ただし、アイコンは Java プロジェクトのものになっていますが。 projectnature の順番を逆にすれば解決しました。