使用Spring4时, 运行时出现找不到MappingJacksonHttpMessageConverter的情况

Posted 干不好测试的程序员不是一个好工程师!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Spring4时, 运行时出现找不到MappingJacksonHttpMessageConverter的情况相关的知识,希望对你有一定的参考价值。

启动项目报错:

[org.springframework.web.context.ContextLoader]Context initialization failed
org.springframework.beans.factory.BeanCreationException: 
Error creating bean with name
org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter#0 ... ... Caused by: org.springframework.beans.factory.CannotLoadBeanClassException:
Cannot find
class [org.springframework.http.converter.json.MappingJacksonHttpMessageConverter] for bean with name org.springframework.http.converter.json.MappingJacksonHttpMessageConverter#2aa148c0 ... ... Caused by: java.lang.ClassNotFoundException: org.springframework.http.converter.json.MappingJacksonHttpMessageConverter ... ...

原因是Spring 3.x 和4.X处理JSON的一个类不一样,而这个东西又配置在xml文件中,所以编译时又无法发现

spring3.x是org.springframework.http.converter.json.MappingJacksonHttpMessageConverter

spring4.x是org.springframework.http.converter.json.MappingJackson2HttpMessageConverter

1. 查找替换所有XML中名字

2. 同时加入最新的FastJackson依赖

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

问题解决!



以上是关于使用Spring4时, 运行时出现找不到MappingJacksonHttpMessageConverter的情况的主要内容,如果未能解决你的问题,请参考以下文章

Win7下在Visual Studio 2008里运行程序时出现找不到MFC90D.dll文件, Command Prompt找不指定路径

使用VS开发QT项目时出现找不到QT头文件

使用VS开发QT项目时出现找不到QT头文件

Maven Install指令构建时出现找不到符号

解决VMware 安装tools时出现找不到文件的方法

Android ------ apk签名时出现找不到证书链