Tag: spring的

启动Java项目时的类冲突:ClassMetadataReadingVisitor将接口org.springframework.asm.ClassVisitor作为超类

我正在使用最新的Spring框架版本(3.2.2-RELEASE)开发一个Java Web项目,但现在我在项目启动时遇到了问题。 细节错误是 java.lang.IncompatibleClassChangeError: class org.springframework.core.type.classreading.ClassMetadataReadingVisitor将接口org.springframework.asm.ClassVisitor作为超类。 我在互联网和这个网站上也研究过这个问题,并得到了一些线索。 我已经从我的项目中删除了asm和spring-asm库,但它没有用。 我看到还有另一个ClassVisitor接口,它在默认JRE的rt.jar中定义。 这是导致这场冲突的原因吗? 但我确实认识到: class ClassMetadataReadingVisitor extends ClassVisitor implements ClassMetadata { private String className; …. } ClassMetadataReadingVisitor引用class org.springframework.asm.ClassVisitor (已在spring-core包中提供),那么它如何与JRE的com.sun.xml.internal.ws.org.objectweb.asm.ClassVisitor接口冲突呢? 我不知道怎么会发生这种情况? 这是完整的堆栈: [ERROR 13:49:39] (ContextLoader:319) – Context initialization failed org.springframework.beans.factory.BeanDefinitionStoreException: Failed to read candidate component class: file [D:\workspace\.projects\myproject\trunk\target\myproject\WEB-INF\classes\com\myproject\action\AuthenticationAction.class]; nested exception is java.lang.IncompatibleClassChangeError: class org.springframework.core.type.classreading.ClassMetadataReadingVisitor has interface org.springframework.asm.ClassVisitor as super […]