[英]Typesafe Config overriding values from external file
我将所有配置都设置到位于src / main / resources下的application.conf中。 当我在生产模式下运行我的应用程序时,效果很好。
val config = ConfigFactory.load()
在某些情况下,当我在docker容器中运行我的应用程序时,我需要覆盖大约30个属性。
当我添加
-Dconfig.file="/etc/deployed.conf"
它排除了所有包含“ application.conf”且未在“ deployed.conf”中覆盖的原始属性。
有什么办法解决这个问题?
更新:将
val myCfg = ConfigFactory.parseFile(new File("etc/deployed.conf"))
val config = ConfigFactory.load().withFallback(myCfg)
覆盖application.conf中的值,如果此文件不存在,将不会引发任何异常?
如果手动创建它,则可以使用withFallback方法。
Config appConfig = ConfigFactory.parseResources(configs.remove(0));
for (String resource : configs) {
appConfig = appConfig.withFallback(ConfigFactory.parseResources(resource));
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.