如何从另一个 ant 脚本中使用参数(-logger org.apache.tools.ant.listener.MailLogger)调用另一个 ant 目标?

StackOverflow https://stackoverflow.com/questions/9510024

我有一个主要的 ant 脚本,用于按一定的顺序启动多个项目的 ant 脚本。

对于每个子项目,我想发送一封电子邮件,通知我构建是否成功。

我知道我可以使用标志 -logger org.apache.tools.ant.listener.MailLogger 构建完成后发送电子邮件。

但是,如果我有多个脚本想要发送电子邮件,我不知道如何传递该标志 -logger org.apache.tools.ant.listener.MailLogger 进入蚂蚁呼叫。

准确地说,我想将记录器标志传递到这个 ant 调用中:

< ant antfile="build.xml" dir="subproject/build" target="build" />

我尝试使用 paramargs, ,但没有成功。

有帮助吗?

解决方案

好问题。就我个人而言,我无法让它与 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')
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top