小编Kar*_*fox的帖子

com.fasterxml.jackson.dataformat.xml.XmlMapper.coercionConfigDefaults() 上的 NoSuchMethodError

我正在解析一个 XML 字符串,并使用 Jackson 库中的a将其转换为JsonNodeScala 中的a。XmlMapper我在 Databricks 笔记本上编码,因此编译是在云集群上完成的。编译我的代码时,我收到了这个错误java.lang.NoSuchMethodError: com.fasterxml.jackson.dataformat.xml.XmlMapper.coercionConfigDefaults()Lcom/fasterxml/jackson/databind/cfg/MutableCoercionConfig;,其中有一百行“at com.databricks. ...”

我可能忘记导入一些东西,但对我来说这没关系(如果我错了请告诉我):

import ch.qos.logback.classic._
import com.typesafe.scalalogging._
import com.fasterxml.jackson._
import com.fasterxml.jackson.core._
import com.fasterxml.jackson.databind.{ObjectMapper, JsonNode}
import com.fasterxml.jackson.dataformat.xml._
import com.fasterxml.jackson.module.scala._
import com.fasterxml.jackson.module.scala.experimental.ScalaObjectMapper
import java.io._
import java.time.Instant
import java.util.concurrent.TimeUnit
import javax.xml.parsers._
import okhttp3.{Headers, OkHttpClient, Request, Response, RequestBody, FormBody}
import okhttp3.OkHttpClient.Builder._
import org.apache.spark._
import org.xml.sax._
Run Code Online (Sandbox Code Playgroud)

由于我使用的是 Databricks,因此没有依赖项的 SBT 文件。相反,我直接在集群上安装了我需要的库。这是我正在使用的:

com.squareup.okhttp:okhttp:2.7.5
com.squareup.okhttp3:okhttp:4.9.0
com.squareup.okhttp3:okhttp:3.14.9
org.scala-lang.modules:scala-swing_3:3.0.0
ch.qos.logback:logback-classic:1.2.6
com.typesafe:scalalogging-slf4j_2.10:1.1.0
cc.spray.json:spray-json_2.9.1:1.0.1
com.fasterxml.jackson.module:jackson-module-scala_3:2.13.0
javax.xml.parsers:jaxp-api:1.4.5
org.xml.sax:2.0.1
Run Code Online (Sandbox Code Playgroud)

导致错误的代码很简单(来自这里: https: //www.baeldung.com/jackson-convert-xml-json第 5 章):

com.squareup.okhttp:okhttp:2.7.5
com.squareup.okhttp3:okhttp:4.9.0
com.squareup.okhttp3:okhttp:3.14.9
org.scala-lang.modules:scala-swing_3:3.0.0 …
Run Code Online (Sandbox Code Playgroud)

scala jackson xmlmapper databricks azure-databricks

10
推荐指数
1
解决办法
2万
查看次数

标签 统计

azure-databricks ×1

databricks ×1

jackson ×1

scala ×1

xmlmapper ×1