草庐IT

java - 不兼容的ClassChangeError : class ClassMetadataReadingVisitor has interface ClassVisitor as super class

coder 2023-05-14 原文

我已经使用 spring-mvc 和 mongodb 作为数据库构建了一个 Web 应用程序。我使用 maven3 构建应用程序。

项目构建成功,但是当应用程序启动时,我在日志中收到以下错误,因为我的应用程序没有启动。这曾经在几个月前有效。

Caused by: java.lang.IncompatibleClassChangeError: class org.springframework.core.type.classreading.ClassMetadataReadingVisitor has interface org.springframework.asm.ClassVisitor as super class

如果有任何指示或需要更多信息,请告诉我。

最佳答案

当加载的类即ClassMetadataReadingVisitor不遵守继承的抽象类或接口(interface)即ClassVisitor的约定时会发生此错误。

看起来在加载时上述类的不同版本正在您的案例中加载。

您的应用程序中似乎有新的 spring-core jar 和旧的 spring-asm jar。 ClassMetadataReadingVisitor 类正在从 spring-core 加载,ClassVisitorspring-asm 加载。

请使用 maven dependency:tree 命令查看依赖的 jars。

关于java - 不兼容的ClassChangeError : class ClassMetadataReadingVisitor has interface ClassVisitor as super class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16209623/

有关java - 不兼容的ClassChangeError : class ClassMetadataReadingVisitor has interface ClassVisitor as super class的更多相关文章

随机推荐