在开普勒的生命周期中没有涵盖的aspectj-maven-plugin

时间:2013-07-12 11:14:30

标签: maven aspectj lifecycle eclipse-kepler

我刚刚下载了OEPE(开普勒)并安装了m2e和m2e-wtp连接器。 我发现在这条路径下:首选项 - > Maven->生命周期映射 - >打开工作区生命周期映射数据有一个预先配置的xml文件,说maven应该忽略AspectJ的编译目标,我认为这就是为什么AspectJ运行时库未添加到项目中,因此eclipse不会将项目识别为AspectJ项目。

<?xml version="1.0" encoding="UTF-8"?>
<lifecycleMappingMetadata>
<pluginExecutions>
    <pluginExecution>
        <pluginExecutionFilter>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>aspectj-maven-plugin</artifactId>
            <versionRange>1.6</versionRange>
            <goals>
                <goal>compile</goal>
            </goals>
        </pluginExecutionFilter>
        <action>
            <ignore />
        </action>
    </pluginExecution>
</pluginExecutions>

我在xml文件中注释掉了这些行并再次重新加载。 现在IDE不会忽略生命周期中的AspectJ插件标记,但是pom文件抱怨它无法识别执行标记。

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<version>1.4</version>
<dependencies>
    <dependency>
        <groupId>org.aspectj</groupId>
        <artifactId>aspectjrt</artifactId>
        <version>${aspectj.version}</version>
    </dependency>
</dependencies>
<configuration>
    <source>1.6</source>
    <target>1.6</target>
</configuration>
<executions>
    <execution>
        <goals>
            <goal>compile</goal>
        </goals>
    </execution>
</executions>
</plugin>

使用indigo m2e-wtp能够识别aspectj插件的<execution>标签并能够添加AspectJ运行时库 自动到项目,虽然在开普勒不是这种情况。 (我认为将m2J项目从pom中取出来是m2e-wtp的工作,但不太确定。)

顺便说一下。我怎么能像Indigo那样让事情发挥作用? 我知道我可以右键单击项目并将其转换为Aspect项目以解决问题,但我希望IDE和插件从pom文件中实现该项目需要AspectJ jar。有什么想法吗?

2 个答案:

答案 0 :(得分:27)

这就是我使用它的方法,首先通过从AJDT更新站点安装“AspectJ开发工具(AJDT)”和“AspectJ编译器for Eclipse”来验证您是否安装了AJDT支持:http://download.eclipse.org/tools/ajdt/43/update 您可以通过“帮助/安装新软件”菜单项来完成此操作。

然后,使用此更新站点安装AJDT M2E,手动安装M2E连接器: http://dist.springsource.org/release/AJDT/configurator/

答案 1 :(得分:0)

只是提醒

不要使用eclipse mars默认链接来获取ajdt插件,而是使用上面的链接。它们也完美适用于火星