如何调试失败的Android Gradle构建?

时间:2016-10-05 08:06:29

标签: android ubuntu gradle aapt

我的构建在Ubuntu 16.04上失败了(我没有编写这个软件):

FAILURE: Build failed with an exception.
11:00:04.533 [ERROR] [org.gradle.BuildExceptionReporter] 
11:00:04.533 [ERROR] [org.gradle.BuildExceptionReporter] * What went wrong:
11:00:04.533 [ERROR] [org.gradle.BuildExceptionReporter] Execution failed for task ':app:processArmv7DebugResources'.
11:00:04.534 [ERROR] [org.gradle.BuildExceptionReporter] > com.android.ide.common.process.ProcessException:     org.gradle.process.internal.ExecException: Process 'command '/home/xxx/Android/Sdk/build-tools/23.0.2/aapt'' finished with non-zero exit value 1
11:00:04.534 [ERROR] [org.gradle.BuildExceptionReporter] 

显然正在运行aapt失败。问题是这个错误显然不会告诉我任何事情。我怎样才能知道究竟发生了什么?我试着用--debug和--stacktrace运行gradlew而没有运气。

此任务processArmv7DebugResources在哪里定义?

1 个答案:

答案 0 :(得分:1)

我最终创建了一个名为aapt的包装器脚本,它将其参数记录到文件中,然后调用真实的aapt。这样我就找到了导致问题的实际命令。这与资产文件名中的区分大小写有关,显然在Windows上有效。

当使用--debug调用时,这实际上也是由Gradle打印的,但是在aapt崩溃和Info标签之后记录了它,所以我不确定这是否是根本原因。