android - gradle 执行过程错误流

标签 android groovy android-emulator gradle

我有一个 android 项目并试图启动模拟器。它在本地运行良好,但在构建服务器上运行良好,所以我试图找出原因,但我看不到任何错误输出(即使在本地)。

task startEmulator << {
    def process = "emulator -avd nexus4 -no-boot-anim -no-window".execute()
    //...consumption code here
}

这是我尝试读取错误输出的方法:

process.waitFor()
print process.err.text

process.waitForProcessOutput(System.out, System.err)

process.consumeProcessOutput(System.out, System.err)

process.consumeProcessErrorStream(System.err)

根据运行是否成功,错误代码被正确设置为 1 或 0。这不是代码退出得太快的问题。例如,当我尝试使用不存在的 AVD 名称的代码时,错误流为空。

我错过了什么?

PS:不能使用 exec 任务,因为我需要这个执行调用是异步的/在后台。

最佳答案

确保 tomcat 用户(如果您使用的是 tomcat)具有运行命令模拟器的权限。如果 tomcat 用户没有权限,您将无法运行该命令。

关于android - gradle 执行过程错误流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22723594/

相关文章:

java - BroadcastReceiver 在 android list 中没有默认构造函数

android - 模拟器在运行Helloworld程序时停在开机界面

groovy - gradle执行命令

eclipse - 如何在 Eclipse 中使用 Groovy 开发 Maven 插件

java - 从 mule esb 向主程序传递参数

android - android中带有复选框和按钮的快速操作对话框/弹出窗口

Android Studio 3 模拟器在 Linux Mint 上失败

android - 找不到类 'android.graphics.drawable.RippleDrawable

android - 检测来电的目标电话号码是 SIM 1 还是 SIM 2?

java - 错误 :Execution failed for task ':app:transformClassesWithDexForDebug' . 尝试发送电子邮件