Scala 错误:对象 XML 不是 Apache Spark 上包 org.json 的成员

Posted

技术标签:

【中文标题】Scala 错误:对象 XML 不是 Apache Spark 上包 org.json 的成员【英文标题】:Scala error: object XML is not a member of package org.json on Apache Spark 【发布时间】:2021-04-26 21:04:04 【问题描述】:

我正在尝试执行以下 scala 代码,但我不断收到以下错误:

command-3313750897057320:1:错误:对象 XML 不是包 org.json 的成员

完整的错误如下所示:

代码如下:

import org.json.XML
import scala.util.Try

val parseXmlToJson = udf((value: String) => 
                         try
                             XML.toJSONObject(value).toString
                         
                         catch
                           case e: Exception => "Processing Error"
                         
                        )
  // Defined UDF to parse xml to json

spark.udf.register("XmlToJson", parseXmlToJson)

代码的目标是将 XML 转换/解析为 JSON。

【问题讨论】:

你的类路径中有java-json.jar 吗?如果您的类路径中有提到的 jar,则可以导入 org.json.XML。 @RakhiAgrawal,抱歉延迟回复。我按照您的建议将 java-json.jar 添加到了我的类路径中,它解决了问题。谢谢 太棒了!乐意效劳。已将其添加到下面的答案中,请将其标记为解决方案,以便其他人在遇到相同问题时可以找到解决方案。 【参考方案1】:

java-json.jar 添加到类路径应该可以解决问题。 org.json.XML 可以导入当且仅当提到的 jar 被添加到类路径中。

【讨论】:

以上是关于Scala 错误:对象 XML 不是 Apache Spark 上包 org.json 的成员的主要内容,如果未能解决你的问题,请参考以下文章

Eclipse Scala IDE 代码未编译

2021年大数据常用语言Scala(二十八):scala面向对象 MAVEN依赖和类

使用 scala 从 HDFS 读取输入 xml 数据

Scala的xml文件配置

错误:未找到插件“org.apache.cordova.barcodeScanner”,或者不是 CDVP 插件。检查 config.xml 中的插件映射

对象 kafka010 不是包 org.apache.spark.streaming 的成员