Jackson依赖异常:java.lang.ClassNotFoundException: com.fasterxml.jackson.core.JsonFactory
解决方案:Jackson YAML依赖提示JsonFactory缺失问题
一、排查依赖导入问题
执行Maven强制更新命令,清理并重新下载依赖:
mvn clean install -U该命令会清除本地仓库中可能损坏的依赖包,并从远程仓库重新拉取完整依赖。
同步IDE依赖状态:如果使用IDEA/Eclipse,右键项目选择Maven -> Reload Project(IDEA)或Maven -> Update Project(Eclipse),确保IDE已正确加载Maven依赖。
检查本地Maven仓库:找到本地仓库中
com/fasterxml/jackson/core/jackson-core/2.13.3目录,确认jackson-core-2.13.3.jar文件存在且大小正常,若文件损坏则删除该目录后重新执行上述Maven命令。
二、验证依赖配置无异常
确认你的Maven依赖没有添加不必要的<scope>限制(比如provided或test),这类范围会导致运行时无法加载依赖包。你的当前依赖配置版本统一(均为2.13.3),无额外范围限制,是符合要求的,但可以再次核对版本一致性。
三、关于自定义类的支持
Jackson完全支持自定义类的序列化/反序列化,只需满足以下条件之一:
- 自定义类拥有公共无参构造函数;
- 若使用带参构造函数,需给构造函数添加
@JsonCreator注解,并给参数添加@JsonProperty注解指定映射字段; - 类的字段拥有对应的getter/setter方法(或直接将字段设为public),Jackson默认通过getter/setter访问字段。
示例TestData类定义:
public class TestData { private String name; private int age; // 无参构造函数 public TestData() {} // getter和setter方法 public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
内容的提问来源于stack exchange,提问作者Yes
相关产品推荐
相关产品推荐

