我们是否需要在Spark中进行xml解析的任何外部jar?

时间:2017-05-10 17:28:19

标签: apache-spark

我正在尝试在Spark中解析XML。我正在低于错误。你能帮我吗?

import org.apache.spark.sql.SQLContext
import org.apache.spark.SparkContext
import org.apache.spark.SparkConf

object TestSpark{
 def main(args:Array[String})
 {
 val conf = new SparkConf().setAppName("Test")
 val sc = new SparkContext(conf)
 val sqlContext = new SQLContext(sc)
 val df = sqlContext.read
 .format("com.databricks.spark.xml")
 .option("rootTag", "book") 
 load("c:\\sample.xml")
 }
}`

错误: Exception in thread "main" java.lang.ClassNotFoundException: Failed to load class for data source: com.databricks.spark.xml.

2 个答案:

答案 0 :(得分:2)

databricks spark xml外,不需要其他外部jar。您需要为2.0+添加依赖项。如果您使用较旧的Spark,则需要使用this

您需要使用

groupId: com.databricks
artifactId: spark-xml_2.11
version: 0.4.1

答案 1 :(得分:0)

将Scala版本与Spark的版本相匹配。从2.0版开始,Spark默认使用Scala 2.11构建。 Scala 2.10用户应该需要Spark源包并使用Scala 2.10支持构建。 这可能会有所帮助

Compatibility issue with Scala and Spark for compiled jars
spark-xml