spring java.lang.NoClassDefFoundError:com.fasterxml.jackson.databind.ObjectMapper

ar7v8xwq  于 2022-11-28  发布在  Spring
关注(0)|答案(1)|浏览(198)

正在将项目中的spring版本从3.x升级到5.x。项目已经具有来自org.codehaus.Jackson.map的对象Map器。ObjectMapper数据绑定对象Map器(2.11.0)均使用,并在工作状态下使用Spring版本(3.x). Eclipselink是当前使用的jpa实现,将spring版本升级到5.x后,显示以下错误:内部异常:java.lang.NoClassDefFoundError:对象Map器
是否有任何依赖冲突?如果是这样,为什么它在 Spring 旧版本中工作?在线文档说org.codehaus.Jackson.map.ObjectMapper被jackson数据绑定器取代。但如果是这样,classNotFound异常应该抛出与org.codehaus.jackson.map.ObjectMapper相关的权利?请帮助解决这个问题

f1tvaqid

f1tvaqid1#

Spring 5及以上版本会出现版本问题。
从上面的异常错误中可以明显看出,此异常错误的根本原因是缺少InvalidDefinitionException类。从2.9.0版本开始,Jacksondatabind API中引入了此类。
要解决此问题,只需在2.9.0或更高版本中添加Jackson数据绑定依赖项

<dependency>
       <groupId>com.fasterxml.jackson.core</groupId>
       <artifactId>jackson-databind</artifactId>
       <version>2.9.0</version>
</dependency>

相关问题