0

我在 GitHub 上有以下 Scala 项目。在那个 repo 中,我有一个类,Configurator它的工作是将 JSON 文件的内容读入字符串,然后使用 Lift JSON 库将字符串反序列化为一个实例AppConfig

import scala.io.Source
import net.liftweb.json._

class Configurator {
  def loadConfigs(configFileUri : String) : AppConfig = {
    implicit val formats = net.liftweb.json.DefaultFormats
    parse(Source.fromFile(configFileUri).mkString).extract[AppConfig]
  }
}

如果你克隆它然后运行./gradlew run,你会得到以下异常:

/Users/myuser/intellij-scala-gradle-example/shared/src/main/scala/com/me/myapp/Configurator.scala:9: could not find implicit value for parameter formats: net.liftweb.json.Formats
    parse(Source.fromFile(configFileUri).mkString).extract[AppConfig]

implicit如果您使用 Google 搜索该异常,您会看到 10,000 条针对我在此处实施的格式修复的建议。但这对我不起作用。所以我想知道:

  1. 为什么我看到这个异常?
  2. 解决方法是什么?
4

1 回答 1

0

从 Lift JSON 切换到 GSON,我所有的问题都消失了。

于 2017-03-14T10:39:28.063 回答