我正在研究https://github.com/capitalone/Hydrograph。 在将Spark版本升级到2.2.1时,我在
的第89行看到了以下错误Caused by: java.lang.NoClassDefFoundError: com/esotericsoftware/kryo/io/UnsafeOutput
at org.apache.spark.serializer.SerializerManager.<init>(SerializerManager.scala:42)
at org.apache.spark.SparkEnv$.create(SparkEnv.scala:289)
at org.apache.spark.SparkEnv$.createDriverEnv(SparkEnv.scala:175)
at org.apache.spark.SparkContext.createSparkEnv(SparkContext.scala:257)
at org.apache.spark.SparkContext.<init>(SparkContext.scala:432)
at org.apache.spark.SparkContext$.getOrCreate(SparkContext.scala:2516)
at org.apache.spark.sql.SparkSession$Builder$$anonfun$6.apply(SparkSession.scala:918)
at org.apache.spark.sql.SparkSession$Builder$$anonfun$6.apply(SparkSession.scala:910)
at scala.Option.getOrElse(Option.scala:121)
at org.apache.spark.sql.SparkSession$Builder.getOrCreate(SparkSession.scala:910)
我现在对此工具没有太多支持,最近接手了它。解决这个问题的任何指针都会有帮助吗?
SOLUTION:在build.gradle文件中添加以下依赖项
编组:'com.esotericsoftware',名称:'kryo',版本:'4.0.1'
答案 0 :(得分:0)
错误似乎非常简单,它无法找到可能已在spark配置中使用的kryo库,因此spark无法创建会话。