2016-04-05 21 views
0

Uygulamamda, cassandra'dan veri alıyorum ve geri kalanını akka spreyi kullanarak sağlıyorum. IDE ile koşarken iyi çalışıyor. Aşağıda verilenİplikten yakalanmamış ölümcül hata [default-akka.actor.default-dispatcher-5] kapatılıyor ActorSystem

[ERROR] [04/05/2016 10:43:38.687] [default-akka.actor.default-dispatcher-5] [ActorSystem(default)] Uncaught fatal error from thread [default-akka.actor.default-dispatcher-5] shutting down ActorSystem [default] java.lang.NoSuchMethodError: org.apache.spark.sql.cassandra.CassandraSQLContext$$anon$1.DDLStrategy()Lorg/apache/spark/sql/execution/SparkStrategies$DDLStrategy$; at org.apache.spark.sql.cassandra.CassandraSQLContext$$anon$1.(CassandraSQLContext.scala:89) at org.apache.spark.sql.cassandra.CassandraSQLContext.(CassandraSQLContext.scala:85)

Benim build.sbt aşağıda verildiği gibi Ama benim makinede lokal olarak Spark submit içinden çalıştırıyorum zaman hata var.

scalaVersion := "2.10.5" 

libraryDependencies += "org.apache.spark" %% "spark-core" % "1.4.0" 

libraryDependencies += "org.apache.spark" %% "spark-streaming" % "1.4.0" 

libraryDependencies += "org.apache.spark" % "spark-sql_2.10" % "1.4.0" 

libraryDependencies += "com.datastax.spark" %% "spark-cassandra-connector" % "1.4.0" withSources() withJavadoc() 


resolvers ++= Seq(
    "Akka Repository" at "http://repo.akka.io/releases/") 

resolvers ++= Seq("Typesafe Repository" at "http://repo.typesafe.com/typesafe/releases/", 
    "Spray Repository" at "http://repo.spray.io") 


libraryDependencies += 
    "com.typesafe.akka" %% "akka-actor" % "2.3.14" 


libraryDependencies ++= { 
    val sprayVersion  = "1.3.2" 
    Seq(
    "io.spray"   %% "spray-can"  % sprayVersion, 
    "io.spray"   %% "spray-routing" % sprayVersion, 
    "io.spray"   %% "spray-json"  % sprayVersion 

) 
} 

Lütfen bana hangi hatayı yaptığımı bildirin. Önceden teşekkürler. Tüm öneriniz değerlidir.

+0

kullanarak bir yağ JAR'ı oluşturabilirsiniz. Daha fazla bilgi için, yol yönlendirilir ve tamamlandığında çağrılır. İç metot, val cassandraContext = new CassandraSQLContext (sc) burada sorun geldi. Başka şüpheleriniz varsa lütfen bana bildirin. Lütfen bu sorunun nasıl düzeltileceğini bana bildirin. Teşekkürler – user1548787

cevap

0

Muhtemelen yalnızca kodunuzu içeren bir JAR gönderiyorsunuz. --jars parametresini kullanarak kıvılcım-cassandra-bağlayıcı sınıf yoluna (spark-submit için) --jars parametresini (bkz. Spark submit's advanced dependency management)

Eklemeniz gerekir. Ya da bir yağ JAR'ı (bağımlılığı içerecek) oluşturmayı ve göndermeyi deneyebilirsiniz. şimdiye kadar yaptığınız gibi. SBT'den sbt-assembly

+0

Cevabınız için teşekkür ederiz. Sbt montajını kullanarak SBT'den JAR'ı yaratıyorum. Yani sorun olmamalı. Lütfen başka bir ihtimal olduğunu bana bildirin. – user1548787