我正在尝试将基于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 ...