Могу ли я написать задачу муравья, которая принимает параметры при выполнении из другой задачи муравья? - PullRequest
7 голосов
/ 25 августа 2009

Можно ли написать задачу муравья, которая принимает параметры при выполнении из другой задачи муравья?

Что я пытаюсь достичь в целом, так это повторное использование существующих задач с разные параметры.

Чего я не знаю, так это:

  • Есть ли в муравье что-то такое подзадача?
  • это может принимать параметры?
  • как и где указывается такая подзадача?

Понятие того, что мне нужно достичь:

Задача Sub 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 ]

14 голосов
/ 25 августа 2009

Есть два способа добиться этого:

  1. Вы можете сделать это с помощью antcall.

  2. Начиная с версии 1.6 вы можете использовать макросы .

2 голосов
/ 26 августа 2009

То, что вы хотите, это макро-определение.

Для действительно хорошего руководства по написанию макросов Ant, прочитайте эту презентацию .

0 голосов
/ 25 августа 2009
<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, запуск задачи будет выполняться раньше, чем

...