java.lang.IncompatibleClassChangeError: classorg.springframework.core.type.classreading.ClassMetadataReadingVisitor has interfaceorg.springframework.asm.ClassVisitor as superclass
at org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.findCandidateComponents(ClassPathScanningCandidateComponentProvider.java:281)
Incompatible 英文是矛盾的意思,也就是有冲突,再看后面的错误:ClassMetadataReadingVisitor has interfaceClassVisitor,也就是说 ClassMetadataReadingVisitor 实现了 ClassVisitor 接口,但是貌似这里出现了问题,于是我看Spring中2个版本的源码,发现了变化。在 Spring 3.0.6中:
java.lang.IncompatibleClassChangeError: class org.springframework.core.type.classreading.ClassMetadataReadingVisitor has interface org.springframework.asm.ClassVisitor as super class ...