2016-10-31 2 views
1

여기 튜토리얼을 따르려고합니다 : http://spark.apache.org/docs/latest/quick-start.html#self-contained-applications. sbt package 명령을 사용하여 빈 병을 얻습니다. 후속 명령Spark Scala, 자체 포함 된 응용 프로그램의 빈 병

spark-submit --class SimpleApp --master local[4] target/scala-2.11/simple-project_2.11-1.0.jar

결과는 :

java.lang.ClassNotFoundException: SimpleApp 
     at java.net.URLClassLoader.findClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     at java.lang.Class.forName0(Native Method) 
     at java.lang.Class.forName(Unknown Source) 
     at org.apache.spark.util.Utils$.classForName(Utils.scala:225) 
     at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:693) 
     at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:185) 
     at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:210) 
     at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:124) 
     at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala) 

나는 루트 디렉토리에 simple.sbt으로, 자습서하는 int 설명 된대로 정확한 레이아웃 및 src/scala/SimpleApp.scala의 소스 코드를 사용했다.

구성은 Windows 10이고 Scala, Hadoop, Spark 및 sbt 바이너리는 해당 웹 사이트에서 가져 왔습니다.

답변

0

sbt는 엄격한 폴더 구조를 적용하고 main 중급 디렉토리를 잊어 버렸습니다. 이전에 나는 방금 src에있는 모든 폴더를 반복적으로 스캔 한 Eclipse를 사용했습니다. 디렉토리 구조에서 중간 main 폴더를 추가

예상대로 진행 컴파일 및 실행을 할 수 있습니다 :

src 
    main 
    scala 
     SimpleApp.scala 

내가이 문서와이 알아 낸 http://www.scala-sbt.org/0.13/docs/Directories.html

관련 문제