我只使用apache-ant
和基于变量的值EXEC任务不ant-contrib
参数传递给Apache的蚂蚁
我有一个ant
目标
<target name="stop" depends="init" >
...
</target>
中,我想调用exec
任务。
如果一个变量HOST_NAME
值all
<exec executable="${executeSSH.shell}" >
<arg value="-h ${HOST_NAME}" />
<arg value="-i ${INSTANCE}" />
<arg value="-w 10" />
<arg value="-e ${myOperation.shell} " />
<arg value=" -- " />
<arg value="${INSTANCE} ${USERNAME} ${PASSWORD}" />
</exec>
如果一个变量HOST_NAME
值anything else
<exec executable="${executeSSH.shell}">
<arg value="-h ${HOST_NAME}" />
<arg value="-i ${INSTANCE}" />
<arg value="-e ${myOperation.shell} " />
<arg value=" -- " />
<arg value="${INSTANCE} ${USERNAME} ${PASSWORD}" />
</exec>
但我想只写一个任务,而不是重复exec
。我已经使用HOST_NAME
参数,但是如何处理第二个参数-w 10
,这两个参数在两个调用中都不相同。
我尝试了几种方法,通过使用condition
和if else
来搜索SO,但似乎没有什么适用于exec
或arg
。
非常有益的,尝试了一千种不同的变化,这是最后做了什么诀窍。 – 2014-04-07 22:55:56
这是伟大而紧凑的。我用它来根据构建参数有条件地生成代码覆盖率报告。 – 2014-08-27 19:42:23