2017-02-18 3 views
2

Spark 2.1ソースコードを正常にビルドしました。 しかし、いくつかの例(例:org.apache.spark.examples.mllib.BinaryClassification)を実行すると、次のエラーが発生します。スパークの例NoClassDefFoundError scopt/OptionParser

Exception in thread "main" java.lang.NoClassDefFoundError: scopt/OptionParser

Iは、Spark 2.1事前に構築されたバージョン(examples/jars/spark-examples_2.11-2.1.0.jar)を使用してこれらの例を実行しようと、私は同じエラーを得ました。スパーク1.6の事前構築バージョンの作品(lib/spark-examples-1.6.2-hadoop2.6.0.jar)。このエラーに関連するpostsがありますが、Spark examplesフォルダには.sbtというファイルがないため、該当しないようです。

答えて

2

答えが見つかりました。このエラーを回避するには、scopt_x.xx-x.x.x.jar--jarsを使用して送信する必要があります。 Sparkの例を作成するときは、spark-examples_x.xx-x.x.x.jarに加えて、scopt_x.xx-x.x.x.jarも作成されます(私の場合、同じターゲットフォルダexamples/target/scala-2.11/jars)。

あなたはjarファイルを入手したら、あなたはあなたのアプリケーションでそれを提出することができます:

./bin/spark-submit \ 
    --jars examples/target/scala-2.11/jars/scopt_x.xx-x.x.x.jar \ 
    --class org.apache.spark.examples.mllib.BinaryClassification \ 
    --master ... 
+0

男はこれがクレイジーです。私はsparkをやっていて、mllibに貢献していても、4年間はこれを理解できませんでした。 'bin/run-example' **は本当に**これを処理していたはずです – javadba

関連する問題