Spark RDD类找不到

3
我对Spark不熟悉,并需要帮助解决以下错误:java.lang.NoClassDefFoundError: org/apache/spark/rdd/RDD$ 我正在使用Scala创建一个独立的Spark示例。 我运行了sbt clean packagesbt assembly来打包Scala Spark代码。 两者都成功完成,没有任何错误。 但是任何RDD上的操作都会导致错误。 如果您有任何解决此问题的指针,将非常有帮助。
我使用spark-submit命令调用作业。 $SPARK_HOME/bin/spark-submit --class org.apache.spark.examples.GroupTest /Users/../spark_workspace/spark/examples/target/scala-2.10/spark-examples_2.10-1.3.0-SNAPSHOT.jar

你下载了二进制分发吗?如果是,那么是哪一个?控制台中是否有其他提示性消息?$SPARK_HOME和/Users/../spark_workspace/spark/是相同的吗? - Dean Wampler
嗨,我遇到了完全相同的问题。你是如何解决这个问题的? - Shekhar
你是否使用不同的Spark核心编译和运行应用程序? - zergood
1个回答

0

我成功地解决了这个错误并绕过了它。这绝对是一个因人而异的答案,但我把它留在这里,以防它最终能帮助到某个人。

在我的情况下,我在Mac上运行了一个homebrew安装的spark(1.2.0)和mahout(0.11.0)。这让我感到非常困惑,因为如果我手动运行mahout命令行,我就不会出现错误,但如果我从一些python代码中调用它,它就会抛出错误。

我意识到我已经在我的配置文件中更新了SPARK_HOME变量,使用了1.4.1版本,并在手动终端中重新加载了它。我运行python代码的终端仍在使用1.2.0版本。我在我的python终端中重新加载了我的配置文件,现在它“只是工作了”。

整个过程感觉非常黑魔法,如果我要猜测这个错误被抛出的合理原因,也许是因为一个移动部件假定您拥有不同的spark版本、架构或其他东西。评论中也暗示了这个解决方案。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接