Configuration 本地application.conf,播放1.2.5?

Configuration 本地application.conf,播放1.2.5?,configuration,local,playframework-1.x,Configuration,Local,Playframework 1.x,是否可以在Play 1.2.5中使用local application.conf?我们的问题是,不同的开发人员有一些不同的设置,我们不想保存到版本控制 找到的备选方案: 只是修改application.conf 必须小心不要将更改提交给VCS 环境:每个开发人员拥有的环境:%john,%mary(保存到VCS) 好的,另一种选择,即使我们不想将它们保存到版本控制 我们在开发过程中会不时地更改->会导致不必要的更改 @include:application.conf选项用于其他配置文件

是否可以在Play 1.2.5中使用local application.conf?我们的问题是,不同的开发人员有一些不同的设置,我们不想保存到版本控制

找到的备选方案:

  • 只是修改application.conf
    • 必须小心不要将更改提交给VCS
  • 环境:每个开发人员拥有的环境:%john,%mary(保存到VCS)
    • 好的,另一种选择,即使我们不想将它们保存到版本控制
    • 我们在开发过程中会不时地更改->会导致不必要的更改
  • @include:application.conf选项用于其他配置文件
    • :这是一个尚未正常工作的实验功能:(
还有别的吗


特别是,有没有办法告诉Play使用自定义文件名(如“conf/application.conf.local”而不是默认的“conf/application.conf”?

我查看了Play!1.2.5源代码,但没有发现任何迹象表明Play!将能够获取除文件
conf/application.conf

之外的任何内容。我刚刚遇到了Play 1.x模块,该模块可能会有所帮助。它似乎适合我们的目的。另外,这有助于防止VC访问生产密码等美国


请注意,此模块仅在Play的Java代码中工作—用Python实现的Play模块(例如)不会意识到外部配置

@include
已经为我们的设置工作,我们在play 1.2.5上导入了不同的环境配置

如果您的团队规模较小,请让每个开发人员使用自己的前缀用户密钥检查自己的配置:

%[user-key].[property]=[value]
然后,每个开发人员都必须更改启动游戏

play run--%[user key]
而不是简单地
play run

您可以附加:

%my_play_id.@include.application.conf=my_application.conf
在application.conf的末尾。每个开发人员或环境一行。您可以覆盖my_application.conf中的某些属性,并且无需在更改的属性前添加%my_play_id。例如,如果您有三个开发人员:

%developer1.@include.application.conf=developer1_conf.conf
%developer2.@include.application.conf=developer2_conf.conf
%developer3.@include.application.conf=developer3_conf.conf

我们要做的是为具有推荐配置(而不是实际的application.conf)的VCS创建application.template配置

这样,每个开发人员都有责任创建自己的application.conf并改进VCS中的模板

这样,就不会有人弄乱部署配置和其他开发人员的配置


如果您想对部署配置进行版本控制,只需将其添加到VCS的标记版本中即可

AFAIK环境方法在第1场比赛中是唯一可行的方法。在第2场比赛中,可以定义替代配置文件(甚至远程)如果每个开发人员在他们的沙箱中运行
play id
,那么
play run
会直接起作用吗?只要您在application.conf中设置了合理的默认值,它就会起作用。在
play.play#readOneConfigurationFile
中,有一个递归逻辑来包含键以
开头的属性的其他配置>@包括。