让蚂蚁不将javac的stderr重定向到stdout



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

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

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

而且,当然,"简单地"移植蚂蚁build.xml逻辑只是成为咕噜咕噜构建的一部分是一项相当大的任务,我目前宁愿不做。

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

你只需要使用"-e"选项。您可以设置ANT_ARGS环境变量,如下所示:

   export ANT_ARGS=-e
   ant ...

   ant -e ...

相关内容

  • 没有找到相关文章

最新更新