Поскольку Ant декларативный, он не делает такие вещи хорошо.Вы можете рассмотреть script
task .
Ant-файлы сборки имеют неявную безымянную цель, которая «содержит» все задачи, которые не являются частью именованных целей.Так что это, помещенное на верхний уровень, будет делать то, что вы описываете.
<script language="javascript"><![CDATA[
importClass( java.util.Vector );
vec = new Vector( project.getTargets().keySet() );
vec.setSize( vec.size( ) - 1 );
project.executeTargets( vec );
]]>
</script>
(Неявная цель появляется в конце списка, отсюда и корректировка размера для предотвращения рекурсии).1010 * Если вы поместите этот скрипт в цель 'runner' - которая будет выполнять все другие цели в файле сборки - вам нужно будет удалить 'runner' из вектора (и неявную цель без имени), чтобы предотвратитьрекурсии.