我正在使用Play Framework 2.2.x / Java。
我想创建一个模块来处理我的主应用程序中的一些逻辑,并且我想在模块 中使用 application.conf 进行配置 而不是使用主应用程序的配置文件!
但是在模块中使用以下代码段,只读取主应用程序配置文件中的值:
Play.application().configuration().getString("myVar");
有没有其他方法可以从我的模块中的 application.conf 文件中获取值?
答案 0 :(得分:4)
Play使用typesafe-config库来读取配置。这实际上是一个Java库,即使Typesafe是Scala公司。
typesafe-config的文档说“想法是库和框架应该在他们的jar中附带reference.conf。”
因此,您的模块配置应存储在名为reference.conf
的文件中 - 格式完全相同,只是名称不同。
出现问题是因为两个配置文件之间存在冲突,因为它们的名称相同,因此它可能按类路径顺序或其他内容。不要使用两个application.conf
文件 - 这个问题过去一直困扰我!
答案 1 :(得分:2)
将配置保存到ie。主应用的/conf/my-module.conf
,然后将其包含在application.conf
的末尾,如:
include "my-module.conf"