因为要给前端返回json数据,在pom文件中引入了jackson的包,启动项目的时候就一直报错

java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/exc/InvalidDefinitionException。
一开始以为是缺少jackson的jar包,看了一下,基本上都有。后上网查找资源普遍都说什么包冲突,去pom.xml文件查看了,有ali仓库的fastjson和另一个json包像似重叠,最后把另一删掉,还是报上面的问题,上网查找资源功夫不负有心人是兼容性问题,我的spring是5.0上的,所以jackson的包对应要升级到2.7以上

最后终于解决了。

java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/exc/InvalidDefinitionException

此信息为spring和jackson相关版本不兼容

我使用的是Spring5.0.8版本,把本地jsckson版本升到2.7.5以上或者更高即可

Spring为4.3.2兼容jackson版本为2.7.5和更高版本,相关依赖如下:


    com.fasterxml.jackson.core
    jackson-core
    2.9.5


    com.fasterxml.jackson.core
    jackson-databind
    2.9.5


    com.fasterxml.jackson.core
    jackson-annotations
    2.9.5


    com.fasterxml.jackson.module
    jackson-module-jaxb-annotations
    2.9.5