1

我正在使用 Play Framework 2.2.x/Java。

我想创建一个模块来从我的主应用程序中分离一些逻辑,并且我想使用模块内的application.conf进行配置,而不是使用主应用程序的配置文件!

但是在模块中使用以下代码段,仅从主应用程序配置文件中读取值:

Play.application().configuration().getString("myVar");

有没有其他方法可以从我的模块中的application.conf文件中获取值?

4

2 回答 2

4

Play 使用typesafe-config库来读取配置。这实际上是一个 Java 库,尽管 Typesafe 是一家 Scala 公司。

typesafe-config 的文档说“这个想法是库和框架应该在它们的 jar 中附带一个 reference.conf。”

所以你的模块配置应该存储在一个名为的文件中reference.conf- 格式完全相同,只是名称不同。

出现问题是因为两个配置文件之间存在冲突,因为它们的名称相同,所以它可能是通过类路径顺序或其他方式发生的。不要使用两个application.conf文件——这个问题过去一直困扰着我!

于 2013-11-10T10:25:31.110 回答
2

将您的配置保存到 ie 中。/conf/my-module.conf的主应用程序,然后将其包含在application.conf类似的末尾:

include "my-module.conf"
于 2013-11-10T10:30:35.100 回答