Maven,Scala,Spring,AspectJ

时间:2011-05-23 20:16:58

标签: spring scala aspectj

有没有人知道你是否可以在编译时用aspectJ&编织scala类。弹簧。我有编译时编织工作所有我的java类,但我似乎无法让它适用于我的使用@Configurable的scala类。

2 个答案:

答案 0 :(得分:4)

对于背景,我已经研究了几天。太痛苦了。无论如何这里是答案。是的,它可以完成,你只是不能使用aspectj maven插件。你必须使用antrun maven插件。快乐斯卡拉编码!

        <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>

答案 1 :(得分:0)

我们从aspectj-maven-plugin 1.0得到编译错误,它错过了Scala类。从maven插件版本1.4升级解决了这个问题。