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

求助:JakartaXmlBindAnnotationModule非Jackson Module子类型的ServiceConfigurationError问题

解决方案:java.util.ServiceConfigurationError: com.fasterxml.jackson.databind.Module 类型不匹配

1. 排除Wildfly自带的Jackson模块

Wildfly 32默认集成的Jackson版本可能与项目依赖的2.15.4存在兼容性问题,尤其是Jakarta XMLBind相关模块。创建或修改jboss-deployment-structure.xml文件,放在项目的WEB-INF(Web项目)或META-INF(Jar项目)目录下,排除服务器自带的Jackson模块,强制使用项目打包的版本:

<jboss-deployment-structure>
    <deployment>
        <exclusions>
            <module name="com.fasterxml.jackson.core.jackson-core"/>
            <module name="com.fasterxml.jackson.core.jackson-databind"/>
            <module name="com.fasterxml.jackson.core.jackson-annotations"/>
            <module name="com.fasterxml.jackson.module.jakarta.xmlbind"/>
        </exclusions>
    </deployment>
</jboss-deployment-structure>

2. 明确Jackson Jakarta XMLBind模块依赖

在pom.xml中直接指定jackson-module-jakarta-xmlbind的版本,确保没有间接引入旧版本模块,同时移除旧的JAXB模块依赖(如jackson-module-jaxb-annotations):

<dependency>
    <groupId>com.fasterxml.jackson.module</groupId>
    <artifactId>jackson-module-jakarta-xmlbind</artifactId>
    <version>2.15.4</version>
</dependency>

3. 清理Wildfly服务器缓存

停止Wildfly服务后,删除standalone/tmp和standalone/data/content目录下的所有文件,清除缓存的旧类文件,再重新启动服务器并部署项目。

4. 调整类加载顺序

通过jboss-deployment-structure.xml配置,确保项目的Jackson类优先加载,避免服务器自带类与项目类加载器冲突:

<jboss-deployment-structure>
    <deployment>
        <exclusions>
            <module name="com.fasterxml.jackson.core.jackson-core"/>
            <module name="com.fasterxml.jackson.core.jackson-databind"/>
            <module name="com.fasterxml.jackson.core.jackson-annotations"/>
            <module name="com.fasterxml.jackson.module.jakarta.xmlbind"/>
        </exclusions>
        <dependencies>
            <module name="deployment.你的项目文件名.war" export="true"/>
        </dependencies>
    </deployment>
</jboss-deployment-structure>

将你的项目文件名.war替换为实际部署的文件名。

5. 修复服务配置文件冲突

检查项目打包后的META-INF/services/com.fasterxml.jackson.databind.Module文件,确保仅包含com.fasterxml.jackson.module.jakarta.xmlbind.JakartaXmlBindAnnotationModule条目。如果存在冲突条目,使用maven-shade-plugin合并服务配置文件:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-shade-plugin</artifactId>
    <version>3.4.1</version>
    <executions>
        <execution>
            <phase>package</phase>
            <goals>
                <goal>shade</goal>
            </goals>
            <configuration>
                <transformers>
                    <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
                </transformers>
            </configuration>
        </execution>
    </executions>
</plugin>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 23:50:12