我试图以独立模式(MacOSX)启动火花流,并获得以下错误:
线程"main“中的异常( org.apache.spark.storage.DiskBlockManager.addShutdownHook(DiskBlockManager.scala:147) at org.apache.spark.storage.DiskBlockManager.(DiskBlockManager.scala:54) at org.apache.spark.storage.BlockManager.(BlockManager.scala:75) at org.apache.spark.storage.BlockManager.(BlockManager.scala:173) at org.apache.spark.SparkEnv$.create(SparkEnv.scala:347 )在org.apache.spark.SparkEnv$.createDriverEnv(SparkEnv.scala:194) at org.apache.spark.SparkContext.createSparkEnv(SparkContext.scala:277) at org.apache.spark.SparkContext.(SparkContext.scala:450) at org.apache.spark.streaming.StreamingContext$.createNewSparkContext(StreamingContext.scala:566) at org.apache.spark.streaming.StreamingContext$.createNewSparkContext(StreamingContext.scala:578) at org.apache.spark。streaming.StreamingContext.(StreamingContext.scala:90) at org.apache.spark.streaming.api.java.JavaStreamingContext.(JavaStreamingContext.scala:78) at io.ascolta.pcap.PcapOfflineReceiver.main(PcapOfflineReceiver.java:103) at : java.lang.NoSuchFieldException: SHUTDOWN_HOOK_PRIORITY at java.lang.Class.getField(Class.java:1584) at org.apache.spark.util.SparkShutdownHookManager.install(ShutdownHookManager.scala:220)在org.apache.spark.util.ShutdownHookManager$.shutdownHooks$lzycompute(ShutdownHookManager.scala:50) at org.apache.spark.util.ShutdownHookManager$.shutdownHooks(ShutdownHookManager.scala:48) at org.apache.spark.util.ShutdownHookManager$.addShutdownHook(ShutdownHookManager.scala:189) at org.apache.spark.util.ShutdownHookManager$.(ShutdownHookManager.scala:58) at org.apache.spark.util.ShutdownHookManager$.(ShutdownHookManager.scala) 13
此症状将与EC2 at https://forums.databricks.com/questions/2227/shutdown-hook-priority-javalangnosuchfieldexceptio.html作为Hadoop2依赖关系进行讨论。但是我正在本地运行(目前),并且使用的是来自https://spark.apache.org/downloads.html的spark-1.5.2-bin-hadoop2.6.tgz二进制文件,我希望它能消除这种可能性。
我已经将我的代码从本质上简化为零;如下所示:
SparkConf conf =新SparkConf() .setAppName(appName) .setMaster(主);JavaStreamingContext ssc =新JavaStreamingContext(conf,新持续时间(1000));
我已经改变了maven的依赖关系,以确保所有的星星之火都在1.5.2版本中保持一致。然而,上面的ssc初始化失败了什么。所以我想是时候寻求帮助了。
构建环境是带阴影插件的eclipse和maven。启动/运行是从eclipse调试器,而不是火花提交,目前。
发布于 2017-10-20 15:43:10
我今天遇到这个问题,是因为我的pom中有两个jars: hadoop-pom 2.7.2.jar和hadoop 1.6.1.jar,它们都是依赖hadoop.fs.FileSystem的。
但是在文件系统-1.6.1中,SHUTDOWN_HOOK_PRIORITY类中没有FileSystem属性。以及文件系统-2.7.2。但是我的代码似乎认为文件系统-1.6.1是正确的类。所以这个问题引起了。
解决方案也很简单,在pom中删除hadoop 1.6.1。这意味着我们需要检查项目中的所有FileSystem都在2.x以上。
https://stackoverflow.com/questions/34471577
复制相似问题