You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Jackson序列化POJO为XML失败,请求技术排查帮助

问题排查与解决

你遇到的NoSuchMethodError本质是Jackson各组件版本不兼容导致的,以下是具体排查和修复步骤:

1. 统一Jackson核心组件版本

jackson-dataformat-xml依赖jackson-core、jackson-databind等核心库,若项目中存在其他依赖引入了不同版本的这些核心组件,就会出现方法找不到的异常。建议在Maven中统一配置Jackson版本,确保所有相关依赖版本一致:

<properties>
    <jackson.version>2.16.1</jackson.version>
</properties>

<dependencies>
    <dependency>
        <groupId>com.fasterxml.jackson.dataformat</groupId>
        <artifactId>jackson-dataformat-xml</artifactId>
        <version>${jackson.version}</version>
    </dependency>
    <!-- 显式引入核心依赖,强制版本统一 -->
    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-core</artifactId>
        <version>${jackson.version}</version>
    </dependency>
    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>${jackson.version}</version>
    </dependency>
</dependencies>

2. 排查并排除依赖冲突

执行Maven命令查看项目依赖树,找出引入冲突版本Jackson的依赖:

mvn dependency:tree

若发现某依赖引入了其他版本的Jackson核心库,通过<exclusions>标签排除冲突依赖:

<dependency>
    <!-- 替换为实际冲突的依赖 -->
    <groupId>第三方依赖groupId</groupId>
    <artifactId>第三方依赖artifactId</artifactId>
    <version>依赖版本</version>
    <exclusions>
        <exclusion>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
        </exclusion>
        <exclusion>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
        </exclusion>
    </exclusions>
</dependency>

3. 修复Person类的构造函数问题

Jackson序列化/反序列化默认需要无参构造函数,你的Person类仅提供了带参构造函数,版本冲突解决后可能出现新的序列化异常,建议添加无参构造函数:

@JacksonXmlRootElement(localName = "person")
public class Person {

    @JacksonXmlProperty(localName = "name")
    public String name;
    @JacksonXmlProperty(localName = "age")
    public int age;

    // 添加无参构造函数
    public Person() {}

    Person(final String n, int a){
        name = n;
        age = a;
    }
}

内容的提问来源于stack exchange,提问作者SPB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 10:35:33