Как вызвать другую цель ant с параметрами (-logger org.apache.tools.ant.listener.MailLogger) из другого сценария ant?

У меня есть основной сценарий ant, который используется для запуска сценария ant нескольких проектов в определенной последовательности.

Для каждого подпроекта я хотел бы отправить электронное письмо с уведомлением, была ли сборка успешной или нет.

Я понимаю, что могу использовать флаг -logger с org.apache.tools.ant.listener.MailLogger отправить электронное письмо после завершения сборки.

Однако, если у меня есть несколько сценариев, которые я хочу отправить по электронной почте, я не уверен, как передать этот флаг -logger org.apache.tools.ant.listener.MailLogger в муравейник.

Точно, я хотел бы передать флаг журнала в этот муравей вызов:

Я пытался с помощью param а также args, но не удалось.

1 ответ

Решение

Хороший вопрос. Лично я не мог заставить его работать с ant цель. Кажется, флаги не поддерживаются.

Однако этот хак работает.

<exec executable="ant.bat">
    <arg value="-logger"/>
    <arg value="org.apache.tools.ant.listener.MailLogger"/>
    <arg value="-f"/>
    <arg value="other_build.xml"/>
</exec>

Два непосредственных вопроса с этим подходом:

  1. Не зависит от платформы.
  2. Сборка сообщает об успехе при сбое сборки (даже с exec failonerror='true')
Другие вопросы по тегам