SBT子项目中的Akka应用程序特定设置

时间:2012-11-02 12:34:28

标签: scala configuration sbt akka

我有一个SBT项目,其子项目(这是一个库)可以与akka演员合作。

就像akka docs我正在尝试从子项目的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 conuguraton置于library-project-conf以外的akka​​ 的配置设置

我跑sbt library-project/test 如果log akka's configuration akka.log-config-on-start = on {{1}},我会收到很多信息,而这些信息无法用到任何好处。

1 个答案:

答案 0 :(得分:0)

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

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

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