I have exactly same symptoms like this question and I followed its accepted answer without luck.
pom.xml
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.0</version>
<relativePath/>
</parent>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
</dependency>
Application.java
@Bean
public TimedAspect timedAspect(MeterRegistry registry) {
return new TimedAspect(registry);
}
Exception:
Caused by: java.lang.BootstrapMethodError: java.lang.NoClassDefFoundError: org/aspectj/lang/ProceedingJoinPoint
at io.micrometer.core.aop.TimedAspect.<init>(TimedAspect.java:73)
at com..mcs.Application.timedAspect(Application.java:29)
at com..mcs.Application$$EnhancerBySpringCGLIB$$b6a83328.CGLIB$timedAspect$1(<generated>)
at com..mcs.Application$$EnhancerBySpringCGLIB$$b6a83328$$FastClassBySpringCGLIB$$be4485cd.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244)
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:331)
at com..mcs.Application$$EnhancerBySpringCGLIB$$b6a83328.timedAspect(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
... 21 more
Caused by: java.lang.NoClassDefFoundError: org/aspectj/lang/ProceedingJoinPoint
... 33 more
Caused by: java.lang.ClassNotFoundException: org.aspectj.lang.ProceedingJoinPoint
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
Dependencies:
[INFO] +- org.springframework.boot:spring-boot-starter-actuator:jar:2.4.0:compile
[INFO] | +- org.springframework.boot:spring-boot-actuator-autoconfigure:jar:2.4.0:compile
[INFO] | | \- org.springframework.boot:spring-boot-actuator:jar:2.4.0:compile
[INFO] | \- io.micrometer:micrometer-core:jar:1.6.1:compile
[INFO] | +- org.hdrhistogram:HdrHistogram:jar:2.1.12:compile
[INFO] | \- org.latencyutils:LatencyUtils:jar:2.0.3:runtime
[INFO] +- org.springframework:spring-aspects:jar:5.3.1:compile
[INFO] | \- org.aspectj:aspectjweaver:jar:1.9.6:compile
It does not make sense to me. The jar aspectjweaver-1.9.6.jar contains org\aspectj\lang\ProceedingJoinPoint.class. The class should be loaded.
Similar questions: ClassNotFoundException - org.aspectj.lang.annotation.Around
Update:
The problem was in Intellij IDEA that was not in sync with pom dependencies. A reload in Maven tab helped.