执行Ant命令时,可以通过-D参数携带参数,传递到执行的XML文件中。
ant -f build.xml -Dparam1=value1 -Dparam2=value2
在build.xml中定义参数,类似:
<property name="build.param1" value="${param1}" />
<property name="build.param2" value="${param2}" />
调用shell脚本,并携带两个参数:
<exec executable="test.sh" failοnerrοr="true">
<arg value="${build.param1}"/>
<arg value="${build.param2}"/>
</exec>
此处功能调用相当于:sh test.sh $param1 $param2 。这里的arg里还可以写成是<arg line="${build.param1} ${build.param2}"/> ,说明value和line的区别是,value表示作为1个参数,line表示用空格分开的多个参数。
在test.sh中打印参数,结果为命令中的数值。
echo "parameter1: $1"
echo "parameter2: $2"
搞定!