1. project profile
  2. user profile (~/.m2/settings.xml)
  3. maven global profile (${maven.home}/conf/settings.xml)

user profile, maven global profile 只能设置包仓库, 插件仓库等

project profile 可以设置如下内容

<repositories>
<pluginRepositories>
<dependencies>
<plugins>
<properties> (not actually available in the main POM, but used behind the scenes)
<modules>
<reporting>
<dependencyManagement>
<distributionManagement>
a subset of the <build> element, which consists of:
<defaultGoal>
<resources>
<testResources>
<finalName>

常用激活方式

<settings>
  ...
  <activeProfiles>
    <activeProfile>profile-1</activeProfile>
  </activeProfiles>
  ...
</settings>

mvn groupId:artifactId:goal -P profile-1,profile-2

<profiles>
  <profile>
    <activation>
      <jdk>1.4</jdk><!--jdk 为1.4 时激活-->
      <jdk>!1.4</jdk><!--jdk 不为 1.4 时激活-->
    </activation>
    ...
  </profile>
</profiles>
<profile>
  <id>config-1</id>
  <activation>
      <property>
          <name>env</name>
          <value>dev1</value>
      </property>
  </activation>
  <properties>
      <config-client.version>0.6.0-SNAPSHOT</config-client.version>
  </properties>
</profile>
$ mvn help:active-profiles -P dev,prod
- developer (source: external)
- dev (source: com.lls.it:zeus_client:1.1.6-SNAPSHOT)
- prod (source: com.lls.it:zeus_client:1.1.6-SNAPSHOT)

所有激活方式