问题描述:
最近我在自学spring框架使用Aspectj实现AOP时,编译代码出现如下错误(截取片段):
=========================================================================
警告: Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'XXXXX' defined in class path resource [AOP01/applicationContext.xml]: BeanPostProcessor before instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: org/aspectj/weaver/reflect/ReflectionWorld$ReflectionWorldException
=========================================================================
IDEA版本及依赖配置:

分析诊断:
按照网上对此错误的分析和处理经验,大概分区为三种:
1.jar包版本问题
2.注解错误
3.配置文件错误
但是我按照网上的经验操作并未解决我的问题,首先排除了注解错误问题,网上所说的execution()格式问题我也检查了依然报错。至于配置文件,有的说法是需要在mapper头部加入,这个也排除了,因为我的切面类和目标类并未定义属性。
default-autowire="byName"

直到后来我检查项目设置,查看所需jar包导入情况时,傻眼了。虽然版本正确,但是少导入一个包
![]()
导入jar包之后在编译,问题迎刃而解!
所以如果有和我一样spring框架的初学者一定要注意基础配置必须核准,这一个小小的问题,我从下午6点开始查到7点,查阅40多篇相关文档,最后才发现是jar包没导入。。。。。。。。。2333
解决方法:
1.选中右上角项目结构

2.左侧选择Libraries,点击加号

3.选择Java

4. 找的你Aspectj的安装位置,打开lib目录,找到所需jar包

5.选择你要应用的模块点击确定

6.一定要点击右下角的应用在退出

7.另外好要检查setting里的这些插件有没有启用

在自学Spring框架并尝试使用Aspectj实现AOP时,遇到BeanCreationException错误,提示NoClassDefFoundError。排除了jar包版本、注解错误和配置文件问题后,发现是缺少了特定的jar包导入。通过在IDEA中添加缺失的Aspectj库,问题得以解决。提醒初学者注意基础配置的准确性。

1471

被折叠的 条评论
为什么被折叠?



