Ich habe einen Aspekt mit einem pointcut in allen RestController kommentierten Controller:Frühling AOP Versagen beim Start: NoSuchMethodError: org.springframework.core.annotation.OrderUtils.getOrder
@Aspect
@Component
public class ControllerLoggingAspect {
Logger log = LoggerFactory.getLogger(this.getClass());
@Pointcut("within(@org.springframework.web.bind.annotation.RestController *)")
public void controller() {
}
@Before("controller()")
public void logBefore(JoinPoint joinPoint) {
log.info("START REST CONTROLLER");
}
@After("controller()")
public void logAfter(JoinPoint joinPoint) {
log.info("END REST CONTROLLER");
}
}
pom Abhängigkeiten:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>5.0.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.8.12</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.7.3</version>
</dependency>
bekomme ich folgende Fehler im Protokoll: NoSuchMethodError: org.springframework.core.annotation.OrderUtils.getOrder
ich kann bestätigen, dass ich tun, um die OrderUtils
Klasse mit der getOrder
Methode in meinem Projekt.
Wenn ich die annotierten Methoden @Before
und @After
entferne, startet Spring ohne Fehler.
Hat jemand eine Idee, was ich vermisse?