codehause jackson SerializerFactory NoClassDefFoundError

问题描述

我已经使用模块 - a 和模块 - b 模块化 Spring MVC(spring-4) 应用程序(模块 - a 用作模块 - b 中的依赖项)。我试图将 jackson-mapper-asl 升级到 com.fasterxml.jackson.core jackson-core 和 jackson-databind。所以我替换了两个模块中的依赖项。

但不知何故,codehaus jackson 依赖一直潜入模块 - b 作为来自模块的传递依赖 - a(我已经与 mvn dependency:tree 进行了交叉检查,并且在模块 - a 中没有 codehaus jackson 的踪迹)。所以我将它从模块中的 pom 中排除 - b 模块的依赖项 - 如下所示。

<dependency>
    <groupId>com.example</groupId>
    <artifactId>module-a</artifactId>
    <version>1.0.0</version>
    <exclusions>
        <exclusion>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-mapper-asl</artifactId>
        </exclusion>
    </exclusions>
</dependency>

真正的问题从这里开始,即使整个项目中不再有旧依赖的痕迹。当我们在整个项目上运行 mvn clean install 时。成功构建模块-a 后,构建在模块-b 的测试用例中失败。模块 b 的测试用例失败并显示以下错误

java.lang.NoClassDefFoundError: org/codehaus/jackson/map/SerializerFactory

为什么 module-b 仍然从旧的依赖项中寻找 serializerfactory,即使我们到处替换它。要查看以跟踪实际问题。非常感谢任何帮助。

谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)