当前位置: 首页 > 知识库问答 >
问题:

Spark Streaming Kafka with Java11 scala代码问题

梅安平
2023-03-14

我在JDK 11中使用scalaSpark Streaming Kafka。但是我得到了下面的错误。

线程“main”java中出现异常。lang.NoSuchMethodError:scala。Predef美元。refArrayOps([Ljava/lang/Object;)Lscala/collection/mutable/ArrayOps;

下面是我正在使用的代码。

val conf = new SparkConf().setMaster("local[*]").setAppName("KafkaExample")
      .set("spark.mongodb.input.uri", "mongodb://127.0.0.1/db.table_data")
      .set("spark.mongodb.output.uri", "mongodb://127.0.0.1/db.table_data")
      .set("spark.driver.allowMultipleContexts", "false")
      .set("spark.ui.enabled", "false")

val kafkaParams = Map("metadata.broker.list" -> "localhost:9092")
    val topics = List("topic").toSet
    val lines = KafkaUtils.createDirectStream[String, String, StringDecoder, StringDecoder](
      ssc, kafkaParams, topics)
    

下面是我的pom。xml

<dependency>
          <groupId>org.apache.spark</groupId>
          <artifactId>spark-core_2.12</artifactId>
          <version>2.4.8</version><!--<version>2.3.2</version>-->
      </dependency>
      <dependency>
          <groupId>org.apache.spark</groupId>
          <artifactId>spark-sql_2.12</artifactId>
          <version>2.4.8</version>
      </dependency>
      <dependency>
          <groupId>org.apache.spark</groupId>
          <artifactId>spark-streaming_2.12</artifactId>
          <version>2.4.8</version><!--<version>2.3.2</version>-->
          <!--<scope>provided</scope>-->
      </dependency>
      <!-- https://mvnrepository.com/artifact/org.apache.spark/spark-streaming-kafka-0-10 -->
      <dependency>
          <groupId>org.apache.spark</groupId>
          <artifactId>spark-streaming-kafka_2.11</artifactId>
          <version>1.6.1</version>
      </dependency>
     
      <dependency>
          <groupId>org.mongodb.spark</groupId>
          <artifactId>mongo-spark-connector_2.12</artifactId>
          <version>2.4.3</version>
      </dependency>
      <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
      <dependency>
          <groupId>com.fasterxml.jackson.core</groupId>
          <artifactId>jackson-core</artifactId>
          <version>2.10.0</version>
      </dependency>

问题出现在KafkaUtils.createDirectStream()中,我检查了maven和scala兼容性JDK 11与scala2.12及更高版本兼容,我们对spack-Streing-kafkajar没有任何maven依赖。请让我知道我的分析是否错误,我应该为JDK 11使用spack-Streing-kafka

共有1个答案

堵鸿光
2023-03-14

>

正如所评论的,您正在混合Scala版本(代理Scala版本无关紧要),并且您也在混合Spark版本

 类似资料:
  • 当从SVN中提取iOS代码时,我有一个问题。我的代码在我的MAC上运行良好,但当我将它上传到SVN并尝试构建我的项目时,它一遍又一遍地显示相同的错误。 Apple Mach-O链接器(id)错误 ld:找不到-lzbar命令/developer/platforms/iphonesimulator的库。platform/developer/usr/bin/clang失败,退出代码为1 这个问题很烦人

  • 本文向大家介绍手写代码:LCS问题相关面试题,主要包含被问及手写代码:LCS问题时的应答技巧和注意事项,需要的朋友参考一下 参考回答: 最长公共子序列代码  

  • 我在MariaDb服务器中有一个触发器,其代码如下: 我正在尝试在我拥有MySQL(5.7+版本)的生产服务器上创建相同的触发器。我会得到这样的错误: 误差静态分析: 分析中发现错误6处。 语句开头意外。(在位置0的“创建触发器”附近) 语句开头意外。(靠近位置15处的“”) 语句开头意外。(靠近位置39处的“插入之前”) 语句开头意外。(第57位“”附近) 语句开头意外。(靠近位置74处的“FO

  • 问题内容: 我有以下代码,其中我使用HashMap(使用两个并行数组)存储键值对(键可以具有多个值)。现在,我必须存储和加载它以备将来使用,这就是为什么我使用文件通道存储和加载它的原因。此代码的问题是:我可以在我的8 GB服务器中存储近1.2亿个键值对(实际上,我可以为JVM分配8 GB中的近5 GB,而这两个并行阵列需要近2.5 GB,其他内存用于我的代码的各种处理)。但是,我必须存储近600/

  • 我一直在开发一个应用程序,我有一个客户列表,我将客户显示为一个列表(使用容器,而不是代码名1中解释的列表)。从带有主要标签的列表中,我点击该商品,它会进入详细页面,在那里我会显示客户图片和其他信息。下面是我从url获取图像的代码(amazon s3 bucket) 有些客户一开始没有图像,我确实看到了默认图像。当我返回列表并再次单击同一客户时,我没有显示任何图像。空白处。相反,我在调试器窗口中收到

  • 我正在使用sybase ASE作为我的数据库。当我尝试使用jooq生成代码时,它显示以下警告。但是没有生成代码。任何帮助,请提前感谢! --

  • 大家好,我有一个模拟ATM机的程序。它使用我创建的account类,在用户输入0到999999之间的id后,为用户生成一个帐户。然后,他们可以执行各种任务,如查看余额、取款、存款等。不过,我在检查程序时遇到了一个问题。它编译时没有错误,并且第一次通过循环时,它工作得非常完美。但是,如果他们点击退出并输入另一个无效id,它会显示两次无效输入消息。我复制了下面发生的事情的控制台。有人能给我解释一下为什

  • 我在做关于Leetcode上大多数水问题的容器 问题: 给定n个非负整数a1,a2。。。,an,其中每个代表坐标(i,ai)处的一个点。绘制n条垂直线,使线i的两个endpoint位于(i,ai)和(i,0)。找到两条线,这两条线与x轴一起构成一个容器,使容器包含最多的水。 注意:容器不能倾斜,n至少为2。 问题链接:https://leetcode.com/problems/container-