<exec> 属性中未捕获蚂蚁输出

  • 本文关键字:蚂蚁 输出 属性 exec ant
  • 更新时间 :
  • 英文 :


我正在尝试将 Ant 执行命令的输出获取到输出属性中并回显该属性。我们应该能够查看命令的输出。我使用了下面的代码,但我无法查看 Ant 执行的输出。

<exec executable="${exe.baroverride}"
      spawn="false"
      failonerror="true"
>
    <redirector outputproperty="baroverride.out"
        errorproperty="baroverride.err"/>
</exec>
<logmsg message="Bar Override Output for the bar file ${iib.build.target.bar.filename} ${baroverride.out}"/>

首先,Ant 不包含<logmsg>任务。 <logmsg>可能来自自定义<macrodef><taskdef>。除非您提供代码,否则我们将无法帮助您了解<logmsg>的工作原理。

其次,<redirector>将输出拆分为两个属性...

 <redirector outputproperty="baroverride.out"
     errorproperty="baroverride.err"/>

。但是,<logmsg>调用仅引用baroverride.out...

<logmsg message="... ${baroverride.out}"/>

如果<exec>写信给baroverride.err,上面的<logmsg>调用不会显示它。

考虑完全删除<redirector>,改用<exec>outputproperty属性...

<exec executable="${exe.baroverride}"
      spawn="false"
      failonerror="true"
      outputproperty="baroverride.out"
/>
<echo>baroverride.out: ${baroverride.out}</echo>

相关内容

  • 没有找到相关文章

最新更新