让ant不将javac的stderr重定向到stdout

时间:2014-12-11 23:57:15

标签: java android ant gruntjs

我正在尝试将基于ant的Android构建添加到更强大的基于grunt的构建系统中。但是,当ant调用javac时,它会将javac的stderr重定向到stdout(将[javac]前缀添加到控制台输出时)。不幸的是,这意味着grunt会丢弃有用的错误输出,除非我以详细模式运行它 - 我宁愿不这样做。

但是,将ant的stdout重定向到stderr会导致另一个问题,因为grunt构建会将任何 stderr解释为中止错误。

我想让ant做的是在stderr上保持javac的stderr输出(这样我就知道为什么我的构建失败了),stdout上的stdout。我在Android build.xml中看不到会影响这一点的任何内容,但是,ant的文档也没有用。

当然,"简单地说"将蚂蚁build.xml逻辑移植到咕噜声构建的一部分是一项相当大的工作,我此时此刻不做。

那么,是否有ant(或Android build.xml)的一些选项,我错过了stderr重定向的背后,或者是否还有其他方法可以实现让我的错误输出显示为错误?

1 个答案:

答案 0 :(得分:-1)

你只需要使用“-e”选项。 您可以像下面这样设置ANT_ARGS环境变量:

   export ANT_ARGS=-e
   ant ...

   ant -e ...