我正在尝试读取活泼的压缩镶木地板文件,但一直低于异常。我找不到此异常的根本原因,有人可以在这里指导我吗?
val sparkSession: SparkSession = SparkSession.builder()
.master("local[2]")
.config("spark.ui.enabled",false)
.appName("local-intellij")
.getOrCreate()
val df = sparkSession.read.parquet("C:\\data\\parquet\\part-00000-4ce5708f-2f50-485d-8ae4-7c5ea440fda6.c000.snappy.parquet")
我的依赖项是:
lazy val json4sVersion = "3.5.0"
lazy val json4sDeps = Seq(
"org.json4s" %% "json4s-core" % json4sVersion,
"org.json4s" %% "json4s-native" % json4sVersion,
"org.json4s" %% "json4s-ast" % json4sVersion,
"org.json4s" %% "json4s-jackson" % json4sVersion)
lazy val sparkVersionCore = "2.3.0.cloudera2"
lazy val sparkDeps = Seq(
"org.apache.spark" %% "spark-hive" % sparkVersionCore,
"org.apache.spark" %% "spark-core" % sparkVersionCore)
java.lang.NoSuchMethodError:org.json4s.jackson.JsonMethods $ .parse(Lorg / json4s / JsonInput; Z)Lorg / json4s / JsonAST $ JValue; 在org.apache.spark.sql.types.DataType $ .fromJson(DataType.scala:113) 在org.apache.spark.sql.execution.datasources.parquet.ParquetFileFormat $$ anonfun $ org $ apache $ spark $ sql $ execution $ datasources $ parquet $ ParquetFileFormat $$ deserializeSchemaString $ 3.apply(ParquetFileFormat.scala:650)处 在org.apache.spark.sql.execution.datasources.parquet.ParquetFileFormat $$ anonfun $ org $ apache $ spark $ sql $ execution $ datasources $ parquet $ ParquetFileFormat $$ deserializeSchemaString $ 3.apply(ParquetFileFormat.scala:650)处 在scala.util.Try $ .apply(Try.scala:192) 在org.apache.spark.sql.execution.datasources.parquet.ParquetFileFormat $ .org $ apache $ spark $ sql $ execution $ datasources $ parquet $ ParquetFileFormat $$ deserializeSchemaString(ParquetFileFormat.scala:650) 在org.apache.spark.sql.execution.datasources.parquet.ParquetFileFormat $$ anonfun $ readSchemaFromFooter $ 1.apply(ParquetFileFormat.scala:643)处 在org.apache.spark.sql.execution.datasources.parquet.ParquetFileFormat $$ anonfun $ readSchemaFromFooter $ 1.apply(ParquetFileFormat.scala:643)
答案 0 :(得分:2)
清除jar版本不匹配。
AFAIK,您必须使用org.json4s json4s-jackson_2.11 3.2.11
// https://mvnrepository.com/artifact/org.json4s/json4s-jackson
libraryDependencies += "org.json4s" %% "json4s-jackson" % "3.2.11"
AFAIK此项条目不是必需的,一旦您在sbt中提到spark版本,我认为它将自动下载。只需尝试删除该条目,然后查看...如果不起作用,请添加上述条目。