pom.xml中的profile能配置如下元素:
id
activation
repositories
pluginRepositories
properties
build
modules
dependencies
dependencyManagement
repositories
pluginRepositories
distributionManagement
reporting
在每个profile中,都有一个<activation>给出当前profile被激活的环境条件,其中给出的任何一个条件满足即激活该profile。示例如下:
<profiles> <profile> <id>mytest</id> <activation> <activeByDefault>false</activeByDefault> <jdk>1.5</jdk> <os> <name>Windows XP</name> <family>Windows</family> <arch>x86</arch> <version>5.1.2600</version> </os> <property> <name>sparrow-type</name> <value>African</value> </property> <file> <exists>${basedir}/file2.properties</exists> <missing>${basedir}/file1.properties</missing> </file> </activation> ... </profile> </profiles> </project>
说明:
jdk,检查构建使用的JDK
os,检查构建服务器的操作系统
property,检查构建过程中是否存在名为${name}的属性及其值
file,检查这里配置的文件是否存在(<exists>)或者不存在<missing>
一个profile是否被激活,还可以根据在settings.xml文件中的<activeProfile>中的id属性,或者根据JVM启动参数-P给出的激活条件,如mvn clean package -Pmytest。