Scala配置:包含另一个文件.conf

Scala配置:包含另一个文件.conf,scala,typesafe-config,Scala,Typesafe Config,目前,我有一个resources/application.conf文件,其中包含以下键: development { server = www.myapp.com aws_key = my_aws_key aws_secret = my_aws_secret } 我想从文件中删除我的aws_密钥和aws_秘密 我正在考虑创建另一个名为resources/credentials.conf的文件,并将我的个人身份验证存储在那里 credentials { aws_

目前,我有一个
resources/application.conf
文件,其中包含以下键:

development {
    server = www.myapp.com
    aws_key = my_aws_key
    aws_secret = my_aws_secret

}
我想从文件中删除我的
aws_密钥
aws_秘密

我正在考虑创建另一个名为
resources/credentials.conf
的文件,并将我的个人身份验证存储在那里

credentials {
    aws_key = my_aws_key
    aws_secret = my_aws_secret
}
然后
以某种方式将其包含在我的
application.conf
中,或者除了
application.conf
之外,将该配置合并到
config
对象中

credentials.conf
将被git忽略。将在
credentials sample.conf
中签入一个示例文件,每个开发人员将根据自己的凭据对其进行更改,并将示例文件重命名为
credentials.conf

我尝试了不同的
include
like变体

  • 包括“凭证”
  • 包括“credentials.conf”
  • 包括“/credentials.conf”
  • 包括文件(“./credentials.conf”)
等等


我知道我可以通过系统变量传递它,但我想尝试上面提到的方法。如果您知道更好的方法,请告诉我。

类型安全配置提供了从一种配置回退到另一种配置的方法。您可以尝试使用ConfigFactory.Load()加载不同的配置,并使用withFallback按指定顺序排列它们。例如:
ConfigFactory.Load(“credentials.conf”)和回退conffactory.Load(“application.conf”)

在conf文件中,添加

include "another_file.conf"

ie:

“包含”是一个很好的方法。这不管用吗?也看看这个:@AlekseyIzmailov:这是我的错。”包括“做了工作”。我在做一个'ConfigFactory.load().getConfig('development'),它排除了credentials.conf