`

jboss wildfly jackson 包冲突(转)

    博客分类:
  • java
阅读更多
一般java web项目第一次在jboss上发布的时候会遇到elasticsearch的jackson包和jboss的jackson包因为版本冲突,导致发布失败。

我当时的报错信息大概是这样的

Java代码  收藏代码
ERROR [io.undertow.request] (default task-5) UT005023: Exception handling request to /cmall-admin-web/order/queryForPage.htm: org.springframework.web.util.NestedServletException: Handler processing failed; nested exception is java.lang.NoClassDefFoundError: Could not initialize class org.elasticsearch.common.xcontent.smile.SmileXContent 
遇到这种情况,你可以尝试按照下面的方法修改后再发布:

1、首先在web项目中的WEB-INF目录下新建一个jboss-deployment-structure.xml文件

Java代码  收藏代码
<?xml version="1.0" encoding="UTF-8" ?> 
<jboss-deployment-structure> 
    <deployment> 
        <!-- Exclusions allow you to prevent the server from automatically adding some dependencies --> 
        <!-- 主要作用就是将应用的日志输出到自己设定目录,而不是输出到wildfly的server.log里面 --> 
        <exclusions> 
            <module name="org.slf4j" /> 
            <module name="org.slf4j.impl" /> 
             
            <!-- 解决es的jackson包与其他jar包中的jackson冲突问题 --> 
            <module name="com.fasterxml"/> 
            <module name="org.jboss.resteasy.resteasy-jackson2-provider" /> 
        </exclusions> 
    </deployment> 
</jboss-deployment-structure> 
2、在pom.xml中添加jackson-core的jar包

Java代码  收藏代码
<!-- 解决es的jackson包与其他jar包中的jackson冲突问题 --> 
<dependency> 
    <groupId>com.fasterxml.jackson.core</groupId> 
    <artifactId>jackson-core</artifactId> 
    <version>2.6.6</version> 
</dependency> 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics