问题描述
|
有谁知道您是否可以在使用AspectJ和spring进行编译时编织scala类。我在所有java类上都进行了编译,但是我似乎无法使其在使用@Configurable的Scala类上正常工作。
解决方法
作为背景,我已经为此工作了几天。真痛苦无论如何,这就是答案。是的,可以做到,您不能使用aspectj maven插件。您必须使用antrun maven插件。快乐的Scala编码!
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<taskdef resource=\"org/aspectj/tools/ant/taskdefs/aspectjTaskdefs.properties\"
classpathref=\"maven.plugin.classpath\" />
<iajc
srcDir=\"src/main/scala\"
destDir=\"target/classes\"
inpath=\"target/classes\"
source=\"1.6\"
aspectPath=\"${org.springframework:spring-aspects:jar}\"
classpathRef=\"maven.compile.classpath\"
Xlint=\"ignore\" />
</target>
</configuration>
</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>
,我们从Aspectj-Maven-Plugin 1.0中遇到了编译错误,它错过了Scala类。从Maven插件的1.4版升级解决了这一问题。