【问题标题】:Slick is failing to find config values in reference.conf (i.e., reference.conf is being ignored), in test setup在测试设置中,Slick 无法在 reference.conf 中找到配置值(即,reference.conf 被忽略)
【发布时间】:2020-01-06 16:06:16
【问题描述】:

当尝试通过 Slick (v3.0.3) 执行查询时,我收到了一个 com.typesafe.config.ConfigException$Missing 异常(包装在 ExceptionInInitializerError 中),惊呼:

No configuration setting found for key 'slick'

显然,当启用 debug 日志记录时,Slick 需要 slick.dumpPaths 的配置值。通常,默认值将由 Slick 的 jar 文件中的 reference.conf 文件提供,但由于某种原因,在这种情况下,该文件(或该特定密钥)没有被拾取。

此外,将application.conf(包括请求的配置值slick.dumpPaths)添加到我的应用程序的资源目录(src/main/resources/,默认情况下)和/或测试资源目录对问题没有帮助 - - 异常仍然发生。

【问题讨论】:

    标签: scala sbt slick slick-3.0 typesafe-config


    【解决方案1】:

    事实证明这是(显然)发生的,因为我试图通过 SBT 的 Tests.Setup 挂钩运行 Slick 查询。我的钩子,在build.sbt,看起来像这样:

    testOptions in Test += Tests.Setup(loader =>
      loader.loadClass("TestSetup").newInstance)
    

    我的猜测是,在实例化此 TestSetup 类时(以及当我的 Slick 查询尝试执行时),SBT 尚未正确实例化 classpath。不过,也许对 SBT 内部有更多了解的人可以编辑此答案以提供更多见解。

    【讨论】:

      猜你喜欢
      • 2019-01-08
      • 2017-04-04
      • 2020-11-29
      • 1970-01-01
      • 1970-01-01
      • 2018-10-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多