我正在尝试使用此快速入门教程使用spark submit命令运行这个简单的spark应用程序。 http://spark.apache.org/docs/1.2.0/quick-start.html#self-contained-applications。当我尝试使用spark-1.4.0-bin-hadoop2.6 \ bin> spark-submit --class运行它时 SimpleApp“--master local [4] C:/.../ Documents / Sparkapp / target / scala- 2.10 / simple-project_2.10-1.0.jar我得到以下异常:
java.lang.ClassNotFoundException: SimpleApp
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
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.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSub
mit$$runMain(SparkSubmit.scala:633)
at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:16
9)
at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:192)
at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:111)
at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
15/06/17 09:45:11 INFO Utils: Shutdown hook called
有谁知道如何解决这个问题?任何帮助是极大的赞赏。
答案 0 :(得分:2)
问题是我们必须将类文件提交给我们想要执行的spark集群,或者将其用作支持文件,因此请按照以下步骤操作 -
创建此类的jar文件 - >在eclipse中,您可以将此类导出为jar文件。 - >从命令行
jar cf myJar.jar myClass.class
按如下方式编辑代码 -
val jarFile =“SimpleApp.jar”; #path
val conf = new SparkConf()。setAppName(“Simple Application”)。setJars(Array(jarFile));
答案 1 :(得分:2)
对此的简单解决方案是在我的情况下检查您的全名,它是main.java.SimpleApp并且它有效。谢谢Svend指出
答案 2 :(得分:1)
另外,你可以设置" local"作为主人在本地运行,更适合开发期。