9

我正在触发一个 ant 脚本(通过巡航控制),并且希望能够将特定ant 目标的 std out 和 std err 转储到纯文本文件中。

是的,我知道巡航控制已经维护了一个包含此信息(以及许多其他内容)的 XML 日志文件,但出于可移植性的原因,我需要从 ant 脚本本身进行此操作。

这可能吗,如果可以,该怎么做?

非常感谢!

4

3 回答 3

10

这很简单:

ant -logfile <logfile> <command>

你也可以对蚂蚁说闭嘴:

ant -q <command>

它对我来说很好。

于 2011-09-28T01:02:18.710 回答
8

记录器任务可能能够做你想做的事:

<record name="log.txt" action="start"/>
...
<record name="log.txt" action="stop"/>

除此之外,某些任务(exec、java 等)自己提供此功能(通常通过 outputerror参数)

于 2009-11-12T01:11:09.780 回答
6

尝试这个:

<java classname="some.package.Class"
    fork="yes"
    output="stdouterr.txt">
    ...
</java>

stdouterr.txt将包含 stdout 和 stderr

<java classname="some.package.Class"
    fork="yes"
    output="stdout.txt"
    error="stderr.txt">
    ...
</java>

stdout.txt并将stderr.txt分别包含 stdout 和 stderr

根据我的经验,由于文件访问权限的原因,当 ant 脚本在巡航控制上运行时,记录任务往往会失败(如果有人能告诉我如何解决这个问题,我会很高兴)。

高温高压

于 2009-11-12T03:45:22.493 回答