Ich benutze Scala, um eine Spark-Anwendung lokal zu erstellen und auszuführen.Spark-Anwendung wirft javax.servlet.FilterRegistration
Mein build.sbt:
name : "SparkDemo"
version : "1.0"
scalaVersion : "2.10.4"
libraryDependencies += "org.apache.spark" %% "spark-core" % "1.2.0" exclude("org.apache.hadoop", "hadoop-client")
libraryDependencies += "org.apache.spark" % "spark-sql_2.10" % "1.2.0"
libraryDependencies += "org.apache.hadoop" % "hadoop-common" % "2.6.0" excludeAll(
ExclusionRule(organization = "org.eclipse.jetty"))
libraryDependencies += "org.apache.hadoop" % "hadoop-mapreduce-client-core" % "2.6.0"
libraryDependencies += "org.apache.hbase" % "hbase-client" % "0.98.4-hadoop2"
libraryDependencies += "org.apache.hbase" % "hbase-server" % "0.98.4-hadoop2"
libraryDependencies += "org.apache.hbase" % "hbase-common" % "0.98.4-hadoop2"
mainClass in Compile := Some("demo.TruckEvents")
Während der Laufzeit erhalte ich die Ausnahme:
Exception in thread "main" java.lang.ExceptionInInitializerError während Aufruf von ... Verursacht durch: java.lang.SecurityException: class Die Unterschriftsinformationen von "javax.servlet.FilterRegistration" stimmen nicht mit Unterzeichnerinformationen anderer Klassen im selben Paket überein
Die Ausnahme wird hier ausgelöst:
val sc = new SparkContext("local", "HBaseTest")
ich die IntelliJ Scala/SBT-Plugin verwenden.
Ich habe gesehen, dass andere Leute auch dieses Problem haben suggestion solution. Aber das ist ein Maven Build ... Ist mein sbt hier falsch? Oder irgendein anderer Vorschlag, wie ich dieses Problem lösen kann?
Nur für den Fall, dass jemand interessiert, funktioniert dieser Ansatz auch mit Maven. – hba