Ich kann einen Spark-Job erfolgreich in der Spark-Shell ausführen, aber wenn seine Pakete und durchlaufen Spark-submit Im Erhalten eines NoSuchMethodError.Spark: Gibt es eine Möglichkeit, Klassenpfad von Funkenschale und Funken auszudrucken?
Dies weist auf eine Art von Mismatch Klassenpfade. Kann ich die beiden Klassenwege vergleichen? Eine Art Logging-Anweisung?
Danke!
15/05/28 12:46:46 ERROR Executor: Exception in task 1.0 in stage 0.0 (TID 1)
java.lang.NoSuchMethodError: scala.Predef$.ArrowAssoc(Ljava/lang/Object;)Ljava/lang/Object;
at com.ldamodel.LdaModel$$anonfun$5$$anonfun$apply$5.apply(LdaModel.scala:22)
at com.ldamodel.LdaModel$$anonfun$5$$anonfun$apply$5.apply(LdaModel.scala:22)
at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33)
at scala.collection.mutable.WrappedArray.foreach(WrappedArray.scala:34)
at scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
at scala.collection.AbstractTraversable.map(Traversable.scala:105)
at com.ldamodel.LdaModel$$anonfun$5.apply(LdaModel.scala:22)
at com.ldamodel.LdaModel$$anonfun$5.apply(LdaModel.scala:22)
at scala.collection.Iterator$$anon$13.hasNext(Iterator.scala:371)
at org.apache.spark.util.collection.ExternalSorter.insertAll(ExternalSorter.scala:202)
at org.apache.spark.shuffle.sort.SortShuffleWriter.write(SortShuffleWriter.scala:56)
at org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:68)
at org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:41)
at org.apache.spark.scheduler.Task.run(Task.scala:64)
at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:203)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Dies auch ein Ergebnis einer Versionskonflikt zwischen den Funken und scala Versionen für den Aufbau die .jar-Datei und die Version auf dem Cluster verwendet werden kann, dass Sie die Gläser vielleicht laufen lassen. Bei Spark-Shell ist dieses Problem nicht vorhanden. – Amir
@catrapture Konnten Sie dieses spezifische Problem lösen? Ich habe das gleiche Problem auch im selben Zusammenhang (Funken einreichen mit Fettglas), und war bisher nicht in der Lage, zu lösen. Vielen Dank. –