【问题标题】:How do you call another ant target with parameters (-logger org.apache.tools.ant.listener.MailLogger) from another ant script?如何从另一个 ant 脚本调用带有参数(-logger org.apache.tools.ant.listener.MailLogger)的另一个 ant 目标?
【发布时间】:2012-03-01 03:00:12
【问题描述】:

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

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

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

但是,如果我有多个要发送电子邮件的脚本,我不确定如何将该标志 -logger org.apache.tools.ant.listener.MailLogger 传递到 ant 调用中。

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

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

【问题讨论】:

    标签: email ant build automated-deploy automated-deployment


    【解决方案1】:

    好问题。就我个人而言,我无法使其与ant 目标一起使用。似乎不支持标志。

    但是,这个 hack 有效。

    <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'

    【讨论】:

    • 我终于做到了:ant target1 target2 -logger org.apache.tools.ant.listener.MailLogger,然后把它放到一个.bat文件中......和你的几乎一样的解决方案...... .
    猜你喜欢
    • 2013-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多