Android Studio 3.1.1中Gradle构建应用时进程卡住无法终止
嘿,我之前也在AS 3.1.1版本碰到过类似的Gradle构建卡住情况,先给你吃个定心丸:你贴的代码完全没问题——就是个常规的Activity初始化,定义byte数组的逻辑根本不会导致构建卡住,问题肯定出在Gradle缓存、配置或者AS本身的状态上。给你几个亲测有效的解决步骤:
先尝试清理并重建项目
这是最常用的快速排查方法:点击顶部菜单栏的Build->Clean Project,等清理完成后再选择Rebuild Project。很多时候是构建缓存出现了异常,清掉后重新构建就能恢复正常。强制终止Gradle进程后重启AS
如果清理重建没效果,试试手动杀掉Gradle进程:- 打开AS右侧的
Gradle面板,找到你的项目,右键点击正在运行的构建任务选择Stop Gradle Build; - 要是面板里没反应,直接去系统的任务管理器(Windows)或活动监视器(Mac)里找到所有带
gradle字样的进程,结束它们; - 最后重启Android Studio,再重新触发构建。
- 打开AS右侧的
检查Gradle插件与Gradle版本的兼容性
AS 3.1.1对应的官方推荐Gradle插件版本是com.android.tools.build:gradle:3.1.1,Gradle wrapper版本建议用4.4(你可以在项目根目录的gradle/wrapper/gradle-wrapper.properties里查看distributionUrl对应的版本)。如果这两个版本不匹配,很容易出现构建异常:- 打开项目根目录的
build.gradle(Project级别的配置文件),确认dependencies里的gradle插件版本是3.1.1; - 调整gradle wrapper版本到兼容的版本后,点击
Sync Now同步项目,再重新构建。
- 打开项目根目录的
禁用Gradle离线模式
要是你之前开了Gradle离线工作模式,刚好本地缺少某些依赖包,构建就会卡住不动:
点击File->Settings(Mac是Android Studio->Preferences),找到Build, Execution, Deployment->Build Tools->Gradle,取消勾选Offline work选项,然后同步项目再尝试构建。清空AS缓存并重启
要是上面的方法都没用,就试试终极方案:点击File->Invalidate Caches / Restart,在弹出的窗口选择Invalidate and Restart。这个操作会清空AS的所有缓存并重启软件,很多奇怪的构建、编辑器问题都能靠这个解决。
内容的提问来源于stack exchange,提问作者Mauricio Andrada

