Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/16.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
火花:螺纹中的异常;“主要”;java.lang.VerifyError:class com.fasterxml.jackson.module.scala.ser.ScalaIteratorSerializer_Scala_Maven_Apache Spark_Jackson - Fatal编程技术网

火花:螺纹中的异常;“主要”;java.lang.VerifyError:class com.fasterxml.jackson.module.scala.ser.ScalaIteratorSerializer

火花:螺纹中的异常;“主要”;java.lang.VerifyError:class com.fasterxml.jackson.module.scala.ser.ScalaIteratorSerializer,scala,maven,apache-spark,jackson,Scala,Maven,Apache Spark,Jackson,我试图对一个大项目中的一些数据进行简单的Spark并行化,但即使是最简单的例子,我也会遇到这个错误 Exception in thread "main" java.lang.VerifyError: class com.fasterxml.jackson.module.scala.ser.ScalaIteratorSerializer overrides final method withResolved.(Lcom/fasterxml/jackson/databind/BeanProperty

我试图对一个大项目中的一些数据进行简单的Spark并行化,但即使是最简单的例子,我也会遇到这个错误

Exception in thread "main" java.lang.VerifyError: class com.fasterxml.jackson.module.scala.ser.ScalaIteratorSerializer overrides final method withResolved.(Lcom/fasterxml/jackson/databind/BeanProperty;Lcom/fasterxml/jackson/databind/jsontype/TypeSerializer;Lcom/fasterxml/jackson/databind/JsonSerializer;)Lcom/fasterxml/jackson/databind/ser/std/AsArraySerializerBase;
任何简单的并行化都会出现错误,即使是这个简单的并行化。我根本不知道这个错误是从哪里来的

    val conf: SparkConf = new SparkConf().setAppName("IEEG Spark").setMaster("local")
    val sc: SparkContext = new SparkContext(conf)
    val data = Array(1, 2, 3, 4, 5)
    val distVals = sc.parallelize(data)
    distVals.foreach(println)
下面是我的maven pom.xml文件


散光
火花
4.0.0
火花点火器
edu.upenn.cis.ieeg
ieeg
1.15-1
2.10.4
edu.upenn.cis.ieeg
ieeg客户端
org.apache.spark
spark-core_2.10
1.5.0
org.scala-lang
scala编译器
${scala.version}
编译
org.scalanlp
微风2.10
0.10
src/main/scala
org.scala-tools
maven scala插件
编译
测试编译
${scala.version}
-目标:jvm-1.5
org.apache.maven.plugins
maven eclipse插件
真的
ch.epfl.lamp.sdt.core.scalabuilder
ch.epfl.lamp.sdt.core.scalanature
org.eclipse.jdt.launching.JRE_容器
ch.epfl.lamp.sdt.launching.SCALA_集装箱
org.scala-tools
maven scala插件
${scala.version}

我被这个错误弄得不知所措,有没有关于从哪里开始的提示?

你可以用下面的依赖关系做一些简单的Spark并行化测试,它使用 spark-assembly-xxx.jar直接作为jar依赖项

<profile>
        <id>apache-spark/scala</id>
        <dependencies>
            <!--Apache Spark -->
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-assembly</artifactId>
                <version>1.5.2</version>
                <scope>system</scope>
                <systemPath>${spark.home}/lib/spark-assembly-1.5.2-hadoop2.6.0.jar</systemPath>
            </dependency>
            <dependency>
                <groupId>org.scala-lang</groupId>
                <artifactId>scala-library</artifactId>
                <version>2.10.2</version>
            </dependency>
        </dependencies>
    </profile>

apachespark/scala
org.apache.spark
火花组件
1.5.2
系统
${spark.home}/lib/spark-assembly-1.5.2-hadoop2.6.0.jar
org.scala-lang
scala图书馆
2.10.2

但我认为问题在于,我有其他使用jackson库的依赖项,但即使我更改了它的版本,我仍然会收到一个错误。也许,我看到了很多关于pom依赖项问题的问题,实际上,assembly jar适合启动,因为它是一个稳定的版本,包含了所有东西。我的解决方案是通过在我自己的pom中添加对较新jackson模块的依赖来覆盖其他版本。似乎是我干的