Android Studio中 "Run"失败,但是 "./gr
2017-10-12 本文已影响0人
GloryObject
问题
Android Studio 中,点击绿色三角按钮 Run 失败,还有一堆看不出什么的 log:
Error:Execution failed for task ':mobile:transformClassesWithDexForAlphaDebug'.
> com.android.build.api.transform.TransformException: java.lang.RuntimeException:
com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException:
com.android.ide.common.process.ProcessException: Return code 1 for dex process
但是使用命令 ./gradlew assembleDebug能成功打包出 apk。
解决方案
使用命令 ./gradlew check,等待一会,看到如下 log:
* What went wrong:
Execution failed for task ':zmtest:lint'.
> Lint found errors in the project; aborting build.
Fix the issues identified by lint, or add the following to your build script to proceed with errors:
...
android {
lintOptions {
abortOnError false
}
}
...
这就好办了,修改zmtest这个 module 的build.gradle文件,添加以上 log 中提示的几行
android {
lintOptions {
abortOnError false
}
}
然后再点击Run按钮运行一下,成功打包并安装~~(撒花 🌺🌺🌺
原因
之所以能想到这个解决方案,是因为想起了前几天看的 Gradle 的一些内容,看过 Gradle 的应该会知道。
Gradle 中有几个主要的 task:
-assemble
-check
-build
-clean
其中的buildtask 中,包含assemble和check这两个 task。
而点击绿色按钮Run时,就是运行的buildtask。
再根据我遇到的现象,Run失败,即build失败,assemble成功。所以问题出在check上。
故单独运行check,便可清楚看到问题所在。
ps: abortOnError是在打包时即使有报错,也不会停止打包。