2

我有一个带有子项目(这是一个库)的 SBT 项目,它与 akka 演员一起做一些事情。

就像在akka 文档中一样,我正在尝试从子项目的reference.conf.
在一个包含子项目的简单 SBT 项目中,这是可行的。那么为什么不用于子项目呢?

我如何加载配置:

val config = ConfigFactory.load()
implicit val system:ActorSystem = ActorSystem("MyLibSystem", config.getConfig("library-project-conf").withFallback(config))

我的reference.conf

library-project-conf {
  akka {
    loglevel = DEBUG
    # some more stuff
  }
}

如果我将配置放在 akka 的配置设置akka之外,则会读取。library-project-conf

我跑sbt library-project/test
如果我记录 akka 的配置akka.log-config-on-start = on我会得到很多我无法充分利用的信息。

4

1 回答 1

0

这很可能与您没有为 ConfigFactory.load() 方法指定一个时使用的类加载器有关。

确保您使用可以访问配置文件的类加载器。

另外,我认为您想要一个 application.conf 而不是 reference.conf,因为 reference.conf 用于添加新的默认值,而不是更改现有的。

于 2012-11-02T19:19:54.167 回答