【发布时间】:2011-05-23 20:16:57
【问题描述】:
有谁知道您是否可以在编译时使用 aspectJ 和 spring 编织 scala 类。我的所有 java 类都有编译时间编织工作,但我似乎无法让它为使用 @Configurable 的 scala 类工作。
【问题讨论】:
有谁知道您是否可以在编译时使用 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 版解决了这个问题。
【讨论】: