2015-05-15 4 views
0

Я следующий проект:AspectJ компилятор Безразлично компилировать * .aj файлы

root 
    |---pom.xml 

src/main/java 
    |---com.package 
      |----App.java 

src/main/aspects 
    |---com.package 
      |----Trace.aj 

Теперь pom.xml является

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.package</groupId> 
    <artifactId>aspectj-test</artifactId> 
    <packaging>jar</packaging> 
    <version>1.0-SNAPSHOT</version> 
    <name>aspectj-test</name> 
    <url>http://maven.apache.org</url> 
    <dependencies> 
     <dependency> 
      <groupId>org.aspectj</groupId> 
      <artifactId>aspectjrt</artifactId> 
      <version>1.8.2</version> 
     </dependency> 
    </dependencies> 
    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.codehaus.mojo</groupId> 
       <artifactId>aspectj-maven-plugin</artifactId> 
       <version>1.7</version> 
       <executions> 
        <execution> 
         <id>compile</id> 
         <configuration> 
          <ajdtBuildDefFile>build.ajproperties</ajdtBuildDefFile> 
         </configuration> 
         <goals> 
          <goal>compile</goal> 
         </goals> 
        </execution> 
       </executions> 
      </plugin> 
     </plugins> 
    </build> 
</project> 

После выполнения mvn aspectj:compile я получил только App.class скомпилированный класс, но не Trace.class. Что в этом плохого?

ответ

1

По умолчанию аспектj-maven-плагин ожидает аспектов в каталоге src/main/aspect. Если вы хотите сохранить их в другом каталоге, вы должны указать конфигурацию:

<configuration> 
    <aspectDirectory>src/main/aspects</aspectDirectory> 
</configuration> 
Смежные вопросы