Maven:是否可以使用条件属性过滤?

时间:2015-06-19 09:54:30

标签: maven

我们知道Maven Resource插件中有一个非常有用的选项:我们可以使用过滤来替换某些资源文件中的占位符和一些预定义的值。可以在此处找到解释:http://maven.apache.org/plugins/maven-resources-plugin/examples/filter.html

问题是:是否可以使用条件过滤?即我想替换文件中的一些占位符,但我想根据某些条件来做,例如:

  

如果myProperty =“DevelopmentSetup”的值则替换   来自development.properties,否则使用“ProductionSetup”。

我可以使用Maven吗?

1 个答案:

答案 0 :(得分:1)

虽然你无法配置Maven的资源插件来使用条件过滤(至少据我所知),Maven仍然可以根据特定属性的值选择构建配置文件。如Maven - Introduction to build profiles所述,当某个属性具有给定值时,您可以激活特定的配置文件(向下滚动到'当系统属性" debug"是时,下面的配置文件将激活配置文件用任何值指定')。

因此,问题的解决方案是设置两个配置文件developmentproduction。在这些配置文件中,您可以相应地配置资源过滤器设置,以使用开发属性文件或生产属性文件。

Maven: The Complete Reference中还有一些有用的信息。特别是提示和技巧部分。