项目构建过程中一个常常需要面对的问题就是不同的平台环境差异,这可能是操作系统的差异、开发平台和测试平台的差异、不同客户之间的差异。
为了应对这些差异,Maven提供了属性、资源过滤以及profile三大特性。Maven用户可以在POM和资源文件中使用Maven属性表示那些可能变化的量,通过不同profile中的属性值和资源过滤特性为不同环境执行不同的构建。
读者需要区分Web项目中一般资源文件和web资源文件,前者是通过maven-resources-plugin处理的,而后者通过maven-war-plugin处理。
本章还详细介绍了profile,包括各种类别profile的特点,以及激活profile的多种方式。除此之外,本章还贯穿了几个实际的示例,相信它们能够帮助读者理解什么才是灵活的构建。