Gradle 杰克逊数据绑定问题-格雷德尔

Gradle 杰克逊数据绑定问题-格雷德尔,gradle,jackson,apache-storm,Gradle,Jackson,Apache Storm,我尝试在本地使用以下命令部署使用2.2.0编写的strom拓扑: /storm local./sample.jar com.sample.processor.storm.Main config.yml 但不幸的是,我遇到了这个问题: java.lang.NoClassDefFoundError: Could not initialize class com.fasterxml.jackson.databind.deser.std.JdkDeserializers 我在gradle文件中包含了

我尝试在本地使用以下命令部署使用2.2.0编写的strom拓扑:

/storm local./sample.jar com.sample.processor.storm.Main config.yml

但不幸的是,我遇到了这个问题:

java.lang.NoClassDefFoundError: 
Could not initialize class
com.fasterxml.jackson.databind.deser.std.JdkDeserializers
我在gradle文件中包含了这一点,在gradle文件下面提供:

buildscript {
    repositories {
        mavenCentral()
        jcenter()
        maven {
            url "https://plugins.gradle.org/m2/"
        }
    }
    dependencies {
        classpath "org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.0.1"
    }
}

repositories {
    maven { url "http://clojars.org/repo"}
    maven { url "https://repository.cloudera.com/artifactory/cloudera-repos/" }
    jcenter { url "http://jcenter.bintray.com/" }
}

configurations {
    includeInJar
}

dependencies {
    includeInJar 'org.codehaus.jackson:jackson-core-asl:1.9.13'
    includeInJar 'org.codehaus.jackson:jackson-mapper-asl:1.9.12'
    includeInJar 'com.fasterxml.jackson.core:jackson-databind:2.9.8'

    compile ('org.apache.storm:storm-core:2.2.0') {
        exclude group: 'org.slf4j'
        exclude group: 'com.fasterxml.jackson.core'
    }
    compile 'org.codehaus.jackson:jackson-core-asl:1.9.13'
    compile 'org.codehaus.jackson:jackson-mapper-asl:1.9.12'
 
    compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.9.8'
}

编译成功后,我可以在运行时在IDE上进行测试,但只有在本地部署时,才会出现上述错误

谢谢你的帮助。提前谢谢


相同的gradle文件适用于storm 0.10.0,但不适用于2.2.0

我从gradle build中删除了fasterxml依赖项,因为这与jackson库冲突,它可以很好地构建JAR可执行文件