Apache spark Spark streaming:java.lang.NoSuchFieldException:SHUTDOWN\u HOOK\u PRIORITY

Apache spark Spark streaming:java.lang.NoSuchFieldException:SHUTDOWN\u HOOK\u PRIORITY,apache-spark,spark-streaming,Apache Spark,Spark Streaming,我尝试在独立模式(MacOSX)下启动spark streaming,但无论发生什么情况,都会出现以下错误: 线程“main”java.lang.ExceptionInInitializeError中出现异常 位于org.apache.spark.storage.DiskBlockManager.addShutdownHook(DiskBlockManager.scala:147) 位于org.apache.spark.storage.DiskBlockManager.(DiskBlockMan

我尝试在独立模式(MacOSX)下启动spark streaming,但无论发生什么情况,都会出现以下错误:

线程“main”java.lang.ExceptionInInitializeError中出现异常 位于org.apache.spark.storage.DiskBlockManager.addShutdownHook(DiskBlockManager.scala:147) 位于org.apache.spark.storage.DiskBlockManager.(DiskBlockManager.scala:54) 位于org.apache.spark.storage.BlockManager(BlockManager.scala:75) 位于org.apache.spark.storage.BlockManager.(BlockManager.scala:173) 位于org.apache.spark.SparkEnv$.create(SparkEnv.scala:347) 在org.apache.spark.SparkEnv$.createDriverEnv(SparkEnv.scala:194) 位于org.apache.spark.SparkContext.createSparkEnv(SparkContext.scala:277) 位于org.apache.spark.SparkContext(SparkContext.scala:450) 位于org.apache.spark.streaming.StreamingContext$.createNewSparkContext(StreamingContext.scala:566) 位于org.apache.spark.streaming.StreamingContext$.createNewSparkContext(StreamingContext.scala:578) 位于org.apache.spark.streaming.StreamingContext(StreamingContext.scala:90) 位于org.apache.spark.streaming.api.java.JavaStreamingContext.(JavaStreamingContext.scala:78) 位于io.ascolta.pcap.PcapOfflineReceiver.main(PcapOfflineReceiver.java:103) 原因:java.lang.NoSuchFieldException:关机\u挂钩\u优先级 位于java.lang.Class.getField(Class.java:1584) 位于org.apache.spark.util.SparkShutdownHookManager.install(ShutdownHookManager.scala:220) 位于org.apache.spark.util.ShutdownHookManager$.shutdownHooks$lzycompute(ShutdownHookManager.scala:50) 位于org.apache.spark.util.ShutdownHookManager$.shutdownHooks(ShutdownHookManager.scala:48) 位于org.apache.spark.util.ShutdownHookManager$.addShutdownHook(ShutdownHookManager.scala:189) 位于org.apache.spark.util.ShutdownHookManager$(ShutdownHookManager.scala:58) 位于org.apache.spark.util.ShutdownHookManager$(ShutdownHookManager.scala) ... 还有13个

此症状将作为Hadoop2依赖项与EC2 at进行讨论。但是我现在正在本地运行,并且使用spark-1.5.2-bin-hadoop2.6.tgz二进制文件,我希望从中消除这种可能性

我把我的代码删减到基本上什么都没有;像这样:

我已经排列了maven依赖项,以确保所有spark内容在版本1.5.2中保持一致。然而,上述ssc初始化无论如何都失败。所以我想是时候寻求帮助了


构建环境是带有shade插件的eclipse和maven。启动/运行是从eclipse调试器开始的,暂时不是spark submit。

我今天遇到了这个问题,因为我的pom中有两个jar:hadoop-common-2.7.2.jar和hadoop-core-1.6.1.jar,它们都依赖于hadoop.fs.FileSystem

但在FileSystem-1.6.1中,FileSystem类中没有SHUTDOWN\u HOOK\u PRIORITY属性。文件系统-2.7.2已经实现。但我的代码似乎认为FileSystem-1.6.1是正确的类。所以这个问题就提出来了


解决方案也很简单,删除pom中的hadoop-core-1.6.1。这意味着我们需要检查项目中的所有文件系统是否高于2.x。

您能为此提交Spark JIRA罚单吗。。。当你这样做时,请在这里发布问题的URL。谢谢
SparkConf conf = new SparkConf()
      .setAppName(appName)
      .setMaster(master);
  JavaStreamingContext ssc = new JavaStreamingContext(conf, new Duration(1000));