1.profile的作用是:
定义一系列的配置信息.<profile>是根据不同的构建环境,对构建(build)过程进行动态配置的手段.然后使用
<activation>条件</activation>来选择使用哪一个配置信息
2.使用<activaByDefault>标签可以并且为true时,表明这个profile是默认开启的.也就是说当没有指定其他的<profile>为激活状态时,设置<activaByDefault>true</activaByDefault>的<profile>是默认激活的.
2.如果我们同时定义多个profile,那么在建立项目的过程中,
如何知道激活的是哪一个profile呢.
指令是 :
mvn help:active-profile
3.对
项目进行打包的时候使用id为test1的profile.maven命令为:
mvn package -P test1
4.如果某些profile当前是处于激活状态的,但是在进行某些操作的时候
不想它处于激活状态.
这个命令是:
mvn package -P !test1 (已对项目打包为例)
5.一个profile是否被激活,可以根据settings.xml文件中的<activeProfile>中的id的属性.或者根据JVM启动参数-P给出的激活条件,
6.
根据环境来选择profile的语句
7.
pom.xml可以定义多个profile,settiongs.xml文件也可以定义多个profile.对于一个profile,如果同是在pom.xml和settings.xml中配置.则settings.xml中的配置优先.
8.在 settings.xml中,可以通过<activeProfiles>直接给出激活的profile
9.<activation>条件</activation>常用
条件有:
- jdk : 检查构建使用的JDK
- os : 检查构建服务器的操作系统
- property : 检查构建过程中是否存在名为${name}的属性及其值
- file : 检查这里配置的文件是否存在(<exists>)或者不存在<missing>
- 如果有多个条件,满足任何一个条件都会激活<profile>