如何将我的$ JBOSS_HOME环境变量传递到我的Maven脚本中?

时间:2015-04-28 21:22:06

标签: maven environment-variables maven-3

我使用Mac 10.9.5和maven 3.2.3。我在我的$JBOSS_HOME文件中定义了一个环境变量~/.profile,可以通过我的shell访问。有没有办法,使用MAVEN_OPTS或类似的,我可以在Maven antrun插件中引用这个值?以下是我的插件的相关部分......

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-antrun-plugin</artifactId>
    <version>1.7</version>
    <executions>
        <execution>
            <id>create-dodeploy-file</id>
            <phase>package</phase>
            <configuration>
                <target>
                    <echo
                        file="$JBOSS_HOME/standalone/deployments/${project.artifactId}.war.dodeploy"
                        append="false" message="" />
                </target>
            </configuration>
            <goals>
                <goal>run</goal>
            </goals>
        </execution>
    </executions>
</plugin>

我更愿意这样做,以至于我不必在每次调用时将命令行传递给Maven(例如-DJBOSS_HOME=$JBOSS_HOME。如果有某种系统方式我可以告诉Maven这个环境var,那将是最好的。

1 个答案:

答案 0 :(得分:2)

您可以使用env.来引用pom.xml中的环境变量:

<properties>
    <JBOSS_HOME>${env.JBOSS_HOME}</JBOSS_HOME>
</properties>

<!-- plugin declaration, snipped -->

<echo
    file="${JBOSS_HOME}/standalone/deployments/${project.artifactId}.war.dodeploy"
    append="false" message="" />