首先,我一直在寻找这个问题已有一段时间,我可以看到存在与此相关的其他解决方案,但是对于Apache Spark 2.3.1版则没有任何解决方法。
简而言之,我正在尝试创建一个使用bahir来执行Spark中分析Twitter消息的应用程序。
但是,我使用的是Apache Spark 2.3.1版,因此我发现了2.3.0-SNAPSHOT
但是当我尝试使用此bin/spark-shell --packages org.apache.bahir:spark-streaming-twitter_2.11:2.3.0-SNAPSHOT
时,无法从我的本地spark-shell中找到它:
:: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS Exception in thread "main" java.lang.RuntimeException: [unresolved dependency: org.apache.bahir#spark-streaming-twitter_2.11;2.3.0-SNAPSHOT: not found]
我可能是一个愚蠢的假设,但我想也许2.3.0适用于2.3.1。
我可以获取2.2.1版本,twitter4j似乎可以工作,但是我仍然无法在实际的streaming.twitter_
上使用Spark 2.3.1时遇到问题。从我当地的火花壳:
scala> import org.apache.spark.streaming.twitter._ <console>:23: error: object twitter is not a member of package org.apache.spark.streaming import org.apache.spark.streaming.twitter._
^
很高兴知道是否有人可以在Apache Spark 2.3.1中使用它吗?
还是我只是被迫降级我的Spark版本以使其正常工作?
我正在一个名为Zeppelin的笔记本中进行此操作,但是我也尝试在Zeppelin之外进行此操作,因此似乎与我正在使用的笔记本无关。
感谢您的见解。
答案 0 :(得分:0)
我遇到了同样的问题。我不能降低火花,因为我需要2.3和另一个氦气。所以我要尝试bahir's dependency
<dependency>
<groupId>org.apache.bahir</groupId>
<artifactId>spark-streaming-twitter_2.11</artifactId>
<version>2.3.0</version>
</dependency>
如果有效的话,我会通知您...
编辑: 它确实起作用。
%spark2.dep
z.reset()
z.addRepo("MavenCentral").url("https://mvnrepository.com/")
z.load("org.apache.bahir:spark-streaming-twitter_2.11:2.3.0")
它解决了不存在的新twitter库的问题,也解决了“新火花”中“旧火花”缺少类的问题。
我能够使用javascript传单地图和spark 2.3 sparkstreaming运行求和示例:)