2

一个快速的问题,但可能没有答案(或者至少是我想要的答案):

我只想将一组特定的环境变量导入 Ant 脚本。<property environment="env"/>我知道我可以通过任务导入整个环境。但是,我正在使用 Jenkins,导入整个环境似乎很愚蠢,因为我想要几个变量,比如$BUILD_NUMER$JOB_NAME

我知道我可以做这样的事情:

 $ ant -DBUILD_NUMBER=$BUILD_NUMBER package

我想有人可能已经想出一种方法来通过资源集合来做到这一点。如果没有,我只需要接受所有环境变量都已导入的事实。

4

1 回答 1

1

可能作弊...使用scriptdef?

<scriptdef name="envproperty" language="javascript">
    <attribute name="name" />
    <attribute name="fromenv" />
<![CDATA[
    importClass( java.lang.System );
    project.setProperty(
        attributes.get( "name" ),
        System.getenv( attributes.get( "fromenv" ) )
    );
]]>
</scriptdef>

<envproperty name="BUILD_NUMBER" fromenv="BUILD_NUMBER" />
<envproperty name="JOB_NAME" fromenv="JOB_NAME" />
于 2012-08-01T23:39:57.317 回答