我正在运行一个使用自定义类的Spark应用程序。我正在使用Eclipse和Spark (v 1.6.1 with hadoop2.6)
。
这个类是jar的一部分,我将jar添加到Eclipse classpath
。但是,当应用程序运行时,我收到错误
java.lang.NoSuchMethodException: myWorld.myClass.<init>(org.apache.spark.SparkConf)
程序:
SparkConf conf = new SparkConf(true);
//specify some Spark settings for conf
/*...
...*/
JavaSparkContext sc = new JavaSparkContext(conf);
类myWorld.myClass.java
没有所谓的init<>
方法,并且在设计上不需要。所以,不确定为什么SparkConfig
需要它。 :(
答案 0 :(得分:0)
如果您使用spark-submit运行应用程序,则必须在命令行中提供classpath,并且还要提供exectuor类路径。
--driver-class-path your.jar --driver-java-options "-Dspark.executor.extraClassPath=your.jar"
提供整个目录而不是jar文件对我有效。