我正在尝试使用Spring Data和Neo4j。我开始尝试遵循这个由主站点链接的指南。特别地,我基于“Hello, World!”示例文件创建了pom.xml。这是从我的pom.xml中截取的导致问题的插件…

<plugin>
<!-- Required to resolve aspectj-enhanced class features -->
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>aspectj-maven-plugin</artifactId>
    <version>1.0</version>
    <configuration>
        <outxml>true</outxml>
        <aspectLibraries>
            <aspectLibrary>
                <groupId>org.springframework</groupId>
                <artifactId>spring-aspects</artifactId>
            </aspectLibrary>
            <aspectLibrary>
                <groupId>org.springframework.data</groupId>
                <artifactId>spring-data-neo4j</artifactId>
            </aspectLibrary>
        </aspectLibraries>
        <source>1.6</source>
        <target>1.6</target>
    </configuration>
    <executions>
        <!-- ERROR HERE IN ECLIPSE SEE BELOW FOR FULL MESSAGE -->
        <execution>
            <goals>
                <goal>compile</goal>
                <goal>test-compile</goal>
            </goals>
        </execution>
    </executions>
    <dependencies>
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjrt</artifactId>
            <version>${aspectj.version}</version>
        </dependency>
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjtools</artifactId>
            <version>${aspectj.version}</version>
        </dependency>
    </dependencies>
</plugin>

我看到的错误是:

 Multiple annotations found at this line:
    - Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:aspectj-maven-plugin:1.0:compile (execution: default, phase: process-classes)
    - Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:aspectj-maven-plugin:1.0:test-compile (execution: default, phase: process-classes)

我运行的是Eclipse 3.6.2和m2e 0.13。我不是Maven专家,所以如果可能的话,请在您的回答中说明清楚。

我也尝试了m2e 1.0.0通过这个更新网站,仍然得到相同的错误。


当前回答

多年来我一直遇到这个问题……eclipse的耻辱。如果你的应用程序被分割成maven模块,那么你可以考虑从IDE中删除受影响的模块,无论何时你需要重新生成/运行插件使用maven命令行安装,eclipse都很乐意在你的本地存储库中提供准备好的工件。不需要耍花招。

其他回答

你可以在eclipse中抑制这个错误: 窗口->首选项-> Maven ->错误/警告

我按照GUI提示找到任何连接器,然后从SpringSource Team找到了AspectJ Integrator。安装后,它被解决了。

对我来说,这是由AspectJ类引起的。我在Discovery里找不到一个能帮上忙的插件。因此,我通过复制现有STS安装的插件和特性文件夹下的org.maven.ide.eclipse.ajdt文件来解决这个问题。

我知道,非常粗鲁的做法。

Eclipse m2e文档中的建议解决方案:

Use quick-fix on the error in pom.xml and select Permanently mark goal run in pom.xml as ignored in Eclipse build - this will generate the required boilerplate code for you. To instruct Eclipse to run your plugin during build - just replace the <ignore/> tag with <execute/> tag in the generated configuration: <action> <execute/> </action> Alternatively you can instruct Eclipse to run the plugin on incremental builds as well: <action> <execute> <runOnIncremental>true</runOnIncremental> </execute > </action>

改变

<artifactId>aspectj-maven-plugin</artifactId>
<version>1.2</version>

into

<artifactId>aspectj-maven-plugin</artifactId>
<version>1.3</version>

帮我解决了问题。