Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json 杰克逊图书馆版本确认_Json_Scala_Jackson - Fatal编程技术网

Json 杰克逊图书馆版本确认

Json 杰克逊图书馆版本确认,json,scala,jackson,Json,Scala,Jackson,这是我的gradle配置的一部分。而且它可以找到。 当我添加“play json”库来处理json字符串时,如下所示 dependencies { compile group: 'org.scala-lang', name: 'scala-library', version: '2.11.1' compile group: 'org.apache.spark', name: 'spark-core_2.11', version: '2.1.0' compile group

这是我的gradle配置的一部分。而且它可以找到。 当我添加“play json”库来处理json字符串时,如下所示

dependencies {
    compile group: 'org.scala-lang', name: 'scala-library', version: '2.11.1'
    compile group: 'org.apache.spark', name: 'spark-core_2.11', version: '2.1.0'
    compile group: 'org.apache.spark', name: 'spark-sql_2.11', version: '2.1.0'
    compile group: 'org.elasticsearch', name: 'elasticsearch-spark-20_2.11', version: '5.1.2'
scala尝试读取csv文件时出现错误

原因:com.fasterxml.jackson.databind.JsonMappingException: 不兼容的Jackson版本:2.7.8 at com.fasterxml.jackson.module.scala.JacksonModule$class.setupModule(JacksonModule.scala:64) 在 com.fasterxml.jackson.module.scala.DefaultScalaModule.setupModule(DefaultScalaModule.scala:19)

我正在使用scala 2.11和spark 2.1.0。
有什么想法吗?

问题是Spark依赖于旧版本的Jackson和。我想该模块与作为
play json
依赖项出现的较新版本的Jackson不太兼容

尝试将Jackson作为可传递依赖项从Spark中排除,如下所示:

    spark.read
        .option("header", fileHeader)
        .option("charset", charset)
        .csv( "./data/" + filePath) // error here

您还可以尝试添加对Jackson 2.7.8的直接依赖。

问题是Spark依赖于旧版本的Jackson和。我想该模块与作为
play json
依赖项出现的较新版本的Jackson不太兼容

尝试将Jackson作为可传递依赖项从Spark中排除,如下所示:

    spark.read
        .option("header", fileHeader)
        .option("charset", charset)
        .csv( "./data/" + filePath) // error here

您也可以尝试添加对Jackson 2.7.8的直接依赖。

Play 2.4.10与Spark 2.1配合得很好,因为他们使用的Jackson非常相似

compile('org.apache.spark:spark-core_2.11:2.1.0') {
     exclude group: 'com.fasterxml.jackson.core', module: 'jackson-databind' 
     exclude group: 'com.fasterxml.jackson.module', module: 'jackson-module-scala_2.11' 
}

Play 2.4.10与Spark 2.1配合得很好,因为他们使用的jackson非常相似

compile('org.apache.spark:spark-core_2.11:2.1.0') {
     exclude group: 'com.fasterxml.jackson.core', module: 'jackson-databind' 
     exclude group: 'com.fasterxml.jackson.module', module: 'jackson-module-scala_2.11' 
}

如果您使用的是最新的spark版本
3.0.0-preview2
,则以下配置是正常的
build.sbt

dependencies {
    compile group: 'org.scala-lang', name: 'scala-library', version: '2.11.1'
    compile group: 'org.apache.spark', name: 'spark-core_2.11', version: '2.1.0'
    compile group: 'org.apache.spark', name: 'spark-sql_2.11', version: '2.1.0'
    compile group: 'org.elasticsearch', name: 'elasticsearch-spark-20_2.11', version: '5.1.2'
    compile group: 'com.typesafe.play', name: 'play-json_2.11', version: '2.4.10'

如果您使用的是最新的spark版本
3.0.0-preview2
,则以下配置是正常的
build.sbt

dependencies {
    compile group: 'org.scala-lang', name: 'scala-library', version: '2.11.1'
    compile group: 'org.apache.spark', name: 'spark-core_2.11', version: '2.1.0'
    compile group: 'org.apache.spark', name: 'spark-sql_2.11', version: '2.1.0'
    compile group: 'org.elasticsearch', name: 'elasticsearch-spark-20_2.11', version: '5.1.2'
    compile group: 'com.typesafe.play', name: 'play-json_2.11', version: '2.4.10'

你救了我:)还有一个相对的问题。你怎么知道play 2.4.10适合spark 2.1?你可以在maven central中检查子依赖项,在这种情况下,这两个版本的jackson并不比你救我的版本冲突:)还有一个相关问题。你怎么知道play 2.4.10适合spark 2.1?你可以在maven central中检查子依赖项,在这种情况下,这两个版本的jackson没有冲突。尝试了两种方法,1。通过排除jackson数据绑定和jackson模块scala 2。添加jackson 2.7.2的直接依赖项。在这两种情况下,当我尝试运行spark作业时,它都失败了,错误原因是:com.fasterxml.jackson.databind.JsonMappingException:compatible jackson version:2.7.2双向重试,1。通过排除jackson数据绑定和jackson模块scala 2。添加jackson 2.7.2的直接依赖项。在这两种情况下,当我尝试运行spark作业时,它都会失败,错误原因是:com.fasterxml.jackson.databind.JsonMappingException:不兼容的jackson版本:2.7.2