2016-09-15 2 views
0

Я пытаюсь запустить приложение scala и в искровой оболочке это хорошо работает. Но когда я использую spark-submit, используя мой класс, он терпит неудачу.error 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 и предоставить его в качестве аргумента для искрового представить. В spark-submit вы должны указать банку с вашим скомпилированным кодом, а не самим исходным кодом.

+0

Я собрал с SBT, нет? – David

+0

Да, и получили некоторые файлы .class. Теперь упакуйте их в банку и используйте для запуска своей работы. Согласно команде, которую вы указали, вы указываете исходный код '.scala' вместо скомпилированного кода. – Zyoma

Смежные вопросы