2016-09-15 14 views
0

私はスカラ・アプリケーションを実行しようとしていますが、これはうまく動作します。しかし、クラスを使用してspark-submitを使用すると失敗します。spark-submit scala、ClassNotFoundException

spark-submit --deploy-mode cluster --master yarn --class org.apache.spark.examples.SparkPi s3n://bucket/test.scala 

Applicacion:

package org.apache.spark.examples 

import org.apache.spark.sql.types._ 
import org.apache.spark.sql.SQLContext 

object SparkPi { 
    def main(args: Array[String]) { 
    val conf = new SparkConf().setAppName("Simple Application") 
    val sqlContext = new org.apache.spark.sql.SQLContext(sc) 

    print("test") 

    } 
} 

エラー:

Final app status: FAILED, exitCode: 10, (reason: Uncaught exception: java.lang.ClassNotFoundException: org.apache.spark.examples.SparkPi)

答えて

1

は、あなたのtest.scalaソースを使用してjarファイルを構築し、火花提出のための引数としてそれを提供するようにしてください。 spark-submitでは、ソースコード自体ではなく、コンパイルされたコードでjarを指定する必要があります。

+0

私はSBTでコンパイルしましたか? – David

+0

ええ、いくつかの '.class'ファイルがあります。今すぐそれらを瓶に詰め、それを使って仕事を始めましょう。あなたが指定したコマンドによれば、コンパイルされたコードの代わりにソースコード '.scala'を指定しています。 – Zyoma