我们有一个Grails应用程序,它使用dfc.jar
和dctm.jar
API连接到Documentum文档库。这些jar期望dfc.properties
文件位于类路径上以配置文档库设置。在一个环境中工作时这很好,但我们正在为dev
,test
和prod
环境构建war文件,每个环境都有自己的dfc.properties
配置。
Grails环境配置非常适合处理应用程序中的其他环境特定设置,但我无法找到一种方法来基于每个环境覆盖dfc.properties
文件或配置Documentum API来检索这是来自其他地方的设置。
我考虑过具有特定于环境的属性文件,然后在每个war构建之前运行一个shell脚本,将它们复制到dfc.properties
文件中,但这感觉太糟糕了。我希望能够完成三个war版本,而不会混淆复制不同版本的属性文件。
grails dev war
grails test war
grails prod war
非常感谢有关如何处理此多环境配置问题的任何建议。
答案 0 :(得分:0)
将此行添加到WEB-INF / classes中dfc.properties的顶部,并将外部化版本存储在应用程序服务器之外:
#include D:\Documentum\config\dfc.properties
只要您可以外部化任何其他环境配置,您只需要一场战争。
作为奖励,如果您愿意,您仍然可以在WEB-INF版本中包含特定于应用程序的密钥,并且它将与外部副本合并。这样,可以单独配置多个应用程序,但使用相同的docbroker /全局注册表设置。