我可以编写一个ant任务,它从另一个ant任务执行时获取参数吗?

时间:2009-08-25 15:16:21

标签: ant build-process build-automation

我可以编写一个ant任务,在从另一个ant任务执行时获取参数吗?

我总体上试图实现的是重用现有任务 不同的参数。

我不知道的是:

  • 蚂蚁中有这样一个子任务吗?
  • 可以带参数吗?
  • 指定此子任务的方式和位置?

概念我需要实现的目标:

子Ant任务,它带有参数param1和param2:

<someAntCommand att="$param1"/>
<someOtherAntCommand att="$param2"/>

主要Ant任务,执行子任务:

<doSomethingToExecSubTask somePointerToTaskOrFile="...">
    <param name="param1"> hello </param>
    <param name="param2"> world </param>
</doSomethingToExecSubTask>

<doSomethingToExecSubTask somePointerToTaskOrFile="...">
    <param name="param1"> hello </param>
    <param name="param2"> universe </param>
</doSomethingToExecSubTask>

3 个答案:

答案 0 :(得分:14)

有两种方法可以实现这一目标:

  1. 您可以使用antcall

  2. 执行此操作
  3. 从ant 1.6开始,您可以使用macros

答案 1 :(得分:2)

你想要的是宏观定义。

有关编写Ant宏的非常好的指南,请查看this presentation

答案 2 :(得分:0)

<property name="param1"/>
<property name="param2"/>
<target name="task1">        
    <property name="param1" value="hello"/>
    <property name="param2" value="world"/>        
</target>
<target name="task2">
</target>

只需调用task2,任务运行就会在它之前运行