【问题标题】:java.lang.ClassCastException: cannot assign instance of scala.collection.immutable.List$SerializationProxyjava.lang.ClassCastException:无法分配 scala.collection.immutable.List$SerializationProxy 的实例
【发布时间】:2019-05-30 15:45:38
【问题描述】:
  1. 我处理来自 Spring Batch Java 应用程序的 csv 文件以进行火花清理。
  2. 已清理文件写入集群中的镶木地板。
  3. 出现序列化异常。

原因:java.lang.ClassCastException:无法将 scala.collection.immutable.List$SerializationProxy 的实例分配给 org.apache.spark.rdd.RDD.org$apache$spark$rdd$RDD$$dependencies_ 的字段在 org.apache.spark.rdd.MapPartitionsRDD 的实例中键入 scala.collection.Seq 在 java.io.ObjectStreamClass$FieldReflector.setObjFieldValues(ObjectStreamClass.java:2287)

【问题讨论】:

  • 欢迎来到 StackOverflow!这不是一个很好的提问方式。我认为你应该先看看帮助我部分。 stackoverflow.com/help/asking

标签: apache-spark


【解决方案1】:

运行此代码时我收到相同的错误消息:

import org.apache.spark.ml.feature.{CountVectorizer, CountVectorizerModel}
import org.apache.spark.ml.clustering.LDA
import org.apache.spark.sql.functions.udf
import scala.collection.mutable.WrappedArray

val txt = Array("A B B C", "A B D D", "A C D")
val txtDf     = spark.sparkContext.parallelize(txt).toDF("txt")
val txtDfSplit = txtDf.withColumn("txt", split(col("txt"), " "))

// val txtDfSplit = df.withColumn("txt", split(col("txt"), " "))

// create sparse vector with the number 
// of occurrences of each word using CountVectorizer
val cvModel = new CountVectorizer().setInputCol("txt").setOutputCol("features").setVocabSize(4).setMinDF(2).fit(txtDfSplit)

val txtDfTrain = cvModel.transform(txtDfSplit)
txtDfTrain.show(false)

产生这个错误:

org.apache.spark.SparkException:作业因阶段失败而中止: 阶段 1.0 中的任务 9 失败 4 次,最近一次失败:丢失任务 9.3 在 1.0 阶段(TID 25,somehostname.domain,执行程序 1): java.lang.ClassCastException:无法分配实例 scala.collection.immutable.List$SerializationProxy 到字段 org.apache.spark.rdd.RDD.org$apache$spark$rdd$RDD$$dependencies_ of 在实例中键入 scala.collection.Seq org.apache.spark.rdd.MapPartitionsRDD

我一直在浏览描述此错误的各个页面,这似乎是某种版本冲突。该代码适用于 IntelliJ(独立)。将应用提交到 Spark 时出现错误。

【讨论】:

  • 你能解决这个问题吗?我遇到了同样的错误。
猜你喜欢
  • 2020-06-30
  • 2017-09-12
  • 2017-02-18
  • 1970-01-01
  • 2019-04-04
  • 2018-03-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多