【问题标题】:NoSuchMethodError on new StreamingContext新 StreamingContext 上的 NoSuchMethodError
【发布时间】:2020-09-28 16:40:22
【问题描述】:

我正在尝试创建 Streaming 上下文,但它在创建 StreamingContext 行中不断抛出异常 这是我的代码

val spark = SparkSession
      .builder()
      .master("local[*]")
      .getOrCreate()

val sc = spark.sparkContext
val ssc = new StreamingContext(sc, Minutes(15))

这是堆栈跟踪

Exception in thread "main" java.lang.NoSuchMethodError: org.apache.spark.util.Utils$.classForName(Ljava/lang/String;)Ljava/lang/Class;
    at org.apache.spark.streaming.scheduler.JobGenerator.liftedTree1$1(JobGenerator.scala:52)
    at org.apache.spark.streaming.scheduler.JobGenerator.<init>(JobGenerator.scala:51)
    at org.apache.spark.streaming.scheduler.JobScheduler.<init>(JobScheduler.scala:55)
    at org.apache.spark.streaming.StreamingContext.<init>(StreamingContext.scala:184)
    at org.apache.spark.streaming.StreamingContext.<init>(StreamingContext.scala:76)
    at vn.fpt.fplay.kafka.StreamConsumer$.main(StreamConsumer.scala:19)
    at vn.fpt.fplay.kafka.StreamConsumer.main(StreamConsumer.scala)

我到处搜索,但找不到这个错误是什么?有人知道吗?任何帮助将不胜感激。

【问题讨论】:

    标签: scala apache-spark


    【解决方案1】:

    正如堆栈跟踪所说 org.apache.spark.streaming.scheduler.JobGenerator(spark 流中的类)正在尝试调用方法org.apache.spark.util.Utils(spark 核心中的类)

    这有两个原因。

    • Spark Core 未添加到您的项目依赖项中。
    • spark-core 和 spark 流库之间的版本不匹配

    检查您的 sbt / maven 并尝试添加或更改为合适的版本。

    【讨论】:

    • 谢谢,我进入 build.sbt 文件并将“spark-streaming”的版本更改为我的 sparkVer,即 3.0.1,现在可以使用了
    猜你喜欢
    • 2019-12-09
    • 2017-10-30
    • 2013-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-05
    • 2015-11-30
    • 2016-01-20
    相关资源
    最近更新 更多