IDEA创建spring boot工程,测试aop时报这个错误,最后是因为我多导入了jar
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>4.3.3.RELEASE</version> </dependency>
查看发现spring bot默认支持aop不需要自己引入
百度了解到:
其实类似于NoSuchMethodError这种错误,最有可能的就是jar包引入版本的问题,或者是jar包冲突。
可以通过maven看一下jar包的树结构,看看jar包之后的依赖关系。如果说确实是jar包缺少,导入jar包即可,比如说Caused by: java.lang.NoSuchMethodError: org.springframework.aop.xxxxx.xxxxx.这个问题,我会先去寻找项目中所依赖的jar包中有没有该jar包存在,再找有没有该类,该方法。
如果没有,你通过pom(maven的配置文件)文件添加依赖即可。如果有该类存在,那么很可能是jar包冲突。关于jar包冲突,举个很简单的例子,如果你引用了A.jar包和B.jar包,并且A和B都依赖于C.jar包。但是,A依赖于1.1版本的C.jar包,B依赖于2.1版本的jar包,如果此时你的项目中存放的是1.1版本的,那么很有可能会报错。