5

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

找到的替代品:

  • 只需修改 application.conf
    • 必须小心不要将更改提交到 VCS
  • 环境:每个开发人员自己的环境:%john, %mary(保存到 VCS)
    • 好的替代方案,即使我们不想将它们保存到版本控制中
    • 我们确实在开发过程中时不时地改变了这些 -> 会导致不必要的改变
  • @include : 附加配置文件的 application.conf 选项

还有什么?

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

4

5 回答 5

6

您可以附加:

%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
于 2013-02-26T15:39:36.257 回答
1

我看过剧!1.2.5的源代码,但找不到任何提示Play!将能够拿起文件以外的任何东西conf/application.conf

于 2013-01-30T22:21:27.410 回答
1

我刚刚遇到了可以提供帮助的 Play 1.x 模块externalconfig。似乎为我们的目的工作。另外,这有助于将生产密码等远离 VCS。

请注意,此模块仅适用于 Play 的 Java 代码 - 在 Python 中实现的 Play 模块(例如migrate)将不知道外部配置。其他依赖于onConfigurationRead().

于 2013-01-31T10:08:30.240 回答
1

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

如果您的团队很小,请让每个开发人员检查他们自己的配置,每个配置都有自己的前缀用户密钥:

%[user-key].[property]=[value]

然后每个开发人员都必须更改启动游戏

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

于 2013-02-02T19:01:45.690 回答
0

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

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

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

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

于 2013-04-10T15:07:44.107 回答