【发布时间】:2012-03-03 03:39:46
【问题描述】:
我希望能够为不同的环境使用不同的 log4j 配置。
在我的开发环境中,我想使用 log4j.properties (A)。但是当我为生产环境构建 Maven 时,我想使用 log4j.properties (B)。
请告诉我如何在我的 pom.xml 中配置它?
【问题讨论】:
-
你使用 maven-release-plugin 管理生产构建吗?
-
不,我以前从未对 maven-release-plugin 感兴趣。还是谢谢,我会看看它是否可以解决这个问题。
-
这是一个反复出现的安静问题,我想加两分钱。客户通常不接受为不同环境创建多个构建。他们希望为所有环境构建一个版本,以消除多个构建的任何回归问题。 log4j 文件应该在您的应用程序之外声明,就像任何任何特定于环境的变量一样。 Maven 构建配置文件似乎总是迷失“构建一次部署到任何地方”的理念。
-
@tom 我热衷于改进如何为所有环境进行一次构建。我的想法是我们的构建服务器在完成之前为所有区域/环境构建工件的特定执行。你所说的我的问题是排除了特定于环境的变量——我们打包的工件应该是完整的并且可以部署,不是吗?
-
@Crowie 我们的工件已准备好部署,但始终有一个每个环境的配置文件,它是 log4j 文件或属性文件。这些文件在应用程序工件之外但在应用程序服务器内配置。