将src/main/aspect作为源文件夹添加到EclipseMaven项目
我希望能够配置pom.xml,以便在将其导入eclipse时,它将将src/main/aspect作为源文件夹添加到EclipseMaven项目,eclipse,maven,import,aspectj,Eclipse,Maven,Import,Aspectj,我希望能够配置pom.xml,以便在将其导入eclipse时,它将src/main/aspect指定为eclipse源文件夹 目前,导入将创建默认的源文件夹,但仅此而已 应该怎么做 谢谢 编辑1 我已将aspectj插件配置为: <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>aspectj-maven-plugin</artifactId> &
src/main/aspect
指定为eclipse源文件夹
目前,导入将创建默认的源文件夹,但仅此而已
应该怎么做
谢谢
编辑1
我已将aspectj插件配置为:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>test-compile</goal>
</goals>
<configuration>
<source>${project.build.source}</source>
<target>${project.build.target}</target>
<aspectDirectory>src/main/aspect</aspectDirectory>
<testAspectDirectory>src/test/aspect</testAspectDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>
org.codehaus.mojo
</groupId>
<artifactId>
aspectj-maven-plugin
</artifactId>
<versionRange>
[1.4,)
</versionRange>
<goals>
<goal>test-compile</goal>
<goal>compile</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
org.codehaus.mojo
aspectj maven插件
1.4
编撰
测试编译
${project.build.source}
${project.build.target}
src/main/aspect
src/测试/方面
编辑2
我已将m2e插件配置为:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>test-compile</goal>
</goals>
<configuration>
<source>${project.build.source}</source>
<target>${project.build.target}</target>
<aspectDirectory>src/main/aspect</aspectDirectory>
<testAspectDirectory>src/test/aspect</testAspectDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>
org.codehaus.mojo
</groupId>
<artifactId>
aspectj-maven-plugin
</artifactId>
<versionRange>
[1.4,)
</versionRange>
<goals>
<goal>test-compile</goal>
<goal>compile</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
org.eclipse.m2e
生命周期映射
1.0.0
org.codehaus.mojo
aspectj maven插件
[1.4,)
测试编译
编译
您不应该配置,因为它已经定义了src/test/aspect和src/main/aspect,并且不需要配置编译等的补充内容
此外,eclipse的问题可能是由于缺少一个组件,这意味着要将以下内容添加到构建中:
<pluginManagement>
<plugins>
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<versionRange>[1.4,)</versionRange>
<goals>
<goal>compile</goal>
<goal>test-compile</goal>
</goals>
</pluginExecutionFilter>
<action>
<execute />
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
org.eclipse.m2e
生命周期映射
1.0.0
org.codehaus.mojo
aspectj maven插件
[1.4,)
编译
测试编译
这可能会导致您在Eclipse中看不到正确导入的源文件夹时出现问题。我认为应该是java版本,而不是目录。target
sources
也允许您指定源目录,文档说如果没有指定,当前项目的java源将是我们的ed-当前配置的项目只有一个
我会尝试在
sources
参数中列出目录,如果不起作用,我会删除sources
并尝试。我不确定是否有用于构建助手maven插件的m2e连接器
,因此您可能必须添加一个类似于提到的khmarbaise的映射。我认为它不会作为sou添加Eclipse提供的rce文件夹。您可以在JavaBuildPath>Source
中自己添加它
这是不必要的:然后您需要安装并将项目转换为AspectJ项目,否则.aj
文件将充满Eclipse抱怨的错误。这些错误不会影响maven编译
根据我的经验,无论是否被识别为源代码,都不会影响maven编译src/main/aspect
下的.aj
文件
和都有您给定的默认值。如果与默认值相同,则不需要它们
下面是我的pom配置(没有尝试测试编译),它可以工作:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<version>1.4</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<!--<Xlint>ignore</Xlint>--><!--bypass xlint warnings -->
</configuration>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjtools</artifactId>
<version>1.7.2</version>
</dependency>
</dependencies>
<executions>
<execution>
<goals>
<goal>compile</goal>
</goals>
</execution>
</executions>
</plugin>
org.codehaus.mojo
aspectj maven插件
1.4
1.6
1.6
org.aspectj
aspectjtools
1.7.2
编译
AspectJ是否使用其他插件?@khmarbaise请查看我的编辑(1)我已经有了这个映射,唯一的区别是我设置的操作-默认值,我想。我现在已经将它更改为,像您一样,从eclipse中删除了项目,重新导入了它,仍然没有src/main/aspect源目录…您也删除了.project、.classpath和.settings文件夹吗?只从eclipse不会从文件系统中删除文件夹和文件。谢谢,我现在在删除您指定的文件/文件夹时重试,但结果是一样的。src/main/aspect
文件夹不会作为源文件夹添加谢谢,关于source
和target
我已将它们设置为与相同的版本您说过:1.61.6
…不过我会看看构建助手