如何在Maven中使用环境变量?代码举例讲解

在Maven中使用环境变量的主要方式有两种:

  1. 在pom.xml中使用${env.环境变量名}直接调用环境变量:
< project >
    ...
    <properties>
        <java.home>${env.JAVA_HOME}</java.home>
    </properties>
</project> 
  1. 在settings.xml中定义环境变量:
<settings>
    ... 
    <profiles>
        <profile>
            <id>dev</id>
            <properties>
                <env.USER>dev_user</env.USER>
            </properties>
        </profile>
    </profiles>
</settings> 

然后在pom.xml中调用:

<project>
    ... 
    <properties>
        <user.name>${env.USER}</user.name>
    </properties>
</project>

要激活settings.xml中定义的profile,需要在命令行指定:-P profile_id。
另外,Maven也可以调用系统环境变量,直接在pom.xml中使用${env.环境变量名}调用。

来看一些示例:
调用JAVA_HOME环境变量:

<project>
    ... 
    <properties>
        <java.home>${env.JAVA_HOME}</java.home>
    </properties>
</project>

在settings.xml中定义env.USER变量:

<settings>
    ... 
    <profiles>
        <profile>
            <id>dev</id>
            <properties>
                <env.USER>dev_user</env.USER>  
            </properties>
        </profile>
    </profiles>
</settings>


在pom.xml中调用:

<project>
    ... 
    <properties>
        <user.name>${env.USER}</user.name>
    </properties>
</project>

激活profile:

mvn compile -P dev