【问题标题】:spark, kafka integration issue: object kafka is not a member of org.apache.spark.streamingspark, kafka 集成问题:对象 kafka 不是 org.apache.spark.streaming 的成员
【发布时间】:2017-09-20 03:41:14
【问题描述】:

我在 IntelliJ IDE 中构建我的 spark 应用程序 (scala) 时收到错误消息。 这是一个简单的应用程序,使用 Kafka Stream 进行进一步处理。我已经添加了所有的 jar,并且 IDE 没有显示任何未解析的导入或代码语句。

但是,当我尝试构建工件时,我收到两个错误,说明 错误:(13, 35) object kafka is not a member of package

org.apache.spark.streaming
import org.apache.spark.streaming.kafka.KafkaUtils

Error:(35, 60) not found: value KafkaUtils
    val messages: ReceiverInputDStream[(String, String)] = KafkaUtils.createStream(streamingContext,zkQuorum,"myGroup",topics)

我看到过类似的问题,但大多数人在提交到 spark 时抱怨这个问题。但是,我落后了一步,只是构建了最终提交给 spark 的 jar 文件。最重要的是,我正在使用 IntelliJ IDE,并且对 spark 和 scala 有点新;在这里迷路了。

以下是 IntelliJ 错误的快照 IntelliJ Error

谢谢

奥马尔

【问题讨论】:

  • 能否指定 Spark 和 Kafka 的版本。你确定你的 pom.xml 中添加了 spark-streaming-kafka jar 吗?
  • 它的 kafka 0.10 和 spark 1.6.2。我正在使用 SBT,所以不确定 pom.xml 并且整个应用程序是使用 IntelliJ 构建的

标签: scala apache-spark intellij-idea apache-kafka spark-streaming


【解决方案1】:

原因是您需要将spark-streaming-kafka-K.version-Sc.version.jar 添加到您的 pom.xml 以及您的 spark lib 目录中。

【讨论】:

  • 我还是这个领域的新手,所以如果我们使用 maven,pom.xml 将发挥作用,我不是,在我的情况下,我们有 SBT。
  • 我还是这个领域的新手,但我认为 pom.xml 只有在我们使用 maven 时才会发挥作用,在我的情况下,我们有 SBT。顺便说一句,我设法通过 IntelliJ 构建了 jar,方法是在一个文件夹中提供所有 Jars,我从每个模块(spark 和 kafka - 从 hortonworks dsomehow 复制)。但我仍然不确定为什么 IntelliJ 没有弄清楚。我尝试了SBT.build 解决方案在提交到 spark 时在其他帖子中提到,但即使这样也不起作用,我必须在命令中指定 jar 文件文件夹才能运行它。指定 jar 文件路径非常麻烦。有更好的解决方案吗?谢谢。跨度>
猜你喜欢
  • 2020-03-11
  • 2021-12-06
  • 2016-09-25
  • 2022-11-20
  • 2019-01-15
  • 2021-02-28
  • 2017-01-01
  • 2019-06-08
  • 2017-06-30
相关资源
最近更新 更多