You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

@Timed注解引发AspectJ类未找到异常,已引入依赖仍报错

问题:ClassNotFoundException: org.aspectj.lang.ProceedingJoinPoint 未解决

问题背景

我的问题症状与某StackOverflow问题完全一致,但按照其已采纳的解决方案操作后仍未解决。

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);
}

抛出的异常信息

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)

依赖树信息

[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

疑惑点

aspectjweaver-1.9.6.jar中明明包含org\aspectj\lang\ProceedingJoinPoint.class,理论上该类应该能被正常加载,实在无法理解问题所在。

相关问题参考:ClassNotFoundException - org.aspectj.lang.annotation.Around

问题解决更新

问题根源是IntelliJ IDEA未与pom依赖同步,在Maven标签页重新加载依赖后问题解决。


内容的提问来源于Stack Exchange,提问作者Leos Literak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 18:41:05