问题遇到的现象和发生背景
在学习springboot时按照书本给的代码启动失败,从而无法进行下去
问题相关代码,请勿粘贴截图
@DeclareParents(value= "com.springboot.chapter4.aspect.service.impl.UserServiceImpl+", defaultImpl=UserValidatorImpl.class)
public UserValidator userValidator;
运行结果及报错内容
我的解答思路和尝试过的方法
我看到这个Caused by: org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException,按照网上的说法是缺少了对应的jar包,于是我添加了对应的jar包,但是不行。
后来我看到了另外一个帖子说是@DeclareParents的问题,其要求注解@DeclareParents中的属性value的值为需要增强的类的全限定名,后面把全限定名后面的+号删除就可以了。说是不同版本的Spring要求不同,后面程序确实成功启动。
我想要达到的结果
那一篇文章太过于简短,我还是不太理解不同版本的Spring要求不同的这个说法,我希望可以得到一个更加详细的解答。
同时我想知道是如何看出来是@DeclareParents这个bug的,因为这个bug是我无意中解决的,我并不知道原因。