我正试图将现有的(web)项目迁移到roo。经过一些痛苦的时间迁移我的maven-settings roo开始喜欢我的项目,我可以运行我的单元测试。到现在为止还挺好。Spring Roo和AOP
在我的项目中,我使用spring-aop来做一些安全性,所有代理都没有编译器。在eclipse中启动我的webapp时,它告诉我,有些类缺失,f.e. org.aspectj.lang.annotation.Aspect。
当我查看我的classpath时,所有的aspectj.jar-stuff都从classpath中删除。我想这是因为Roo使用Aspectj-Compiler来添加AOP,并且不需要运行时编织。那么迁移我现有的aop-code的正确方法是什么?我应该告诉Roo/Maven将所有aspectj-jar添加到我的webapp-lib文件夹,还是应该将aop迁移到编译时编织?
有什么答案,我该怎么做?
在我的pom.xml也有一些相关性: 代码:
<dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjrt</artifactId> <version>${aspectj.version}</version> </dependency> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>${aspectj.version}</version> </dependency>
我真的不知道在哪里所有的袋鼠,Maven的东西,奇迹发生了对AspectJ中被删除来自日食类路径。那么,我需要改变什么才能在类路径中保留这些罐子?
我的方面是这样的,并适用于使用运行时编织时: 代码:
@Aspect public class SecurityAspect { @Around("execution(@AuthorizedMethod public * de.diandan.web.controller.*.*(..))") public Object checkRights(ProceedingJoinPoint jp) throws Throwable { }
我有什么做的,告诉AspectJ来织在编译时这方面?
问候, 迈克尔