Android Studio从3.0.1升级后Gradle同步报错:Unexpected end of ZLIB input stream
解决Android Studio升级后Gradle同步报错"Unexpected end of ZLIB input stream"
这个错误我之前帮不少开发者排查过,大概率是Gradle缓存损坏或者插件与Gradle版本不匹配导致的,结合你的情况,给你几个针对性的解决步骤:
1. 清理Gradle缓存(最常见的解决方法)
ZLIB输入流异常通常是缓存的压缩文件损坏了,直接清理Gradle缓存就能解决:
- Windows系统:找到
C:\Users\<你的用户名>\.gradle\caches目录,删除里面所有内容 - Mac/Linux系统:打开终端,执行
rm -rf ~/.gradle/caches - 清理完成后重启Android Studio,重新点击「Sync Project with Gradle Files」
2. 匹配Gradle插件与Gradle版本
你升级了Android Studio,但项目里的Gradle插件还停留在3.0.1,版本不兼容也会导致同步失败:
修改项目级build.gradle的插件版本
如果你升级到了Android Studio 3.1.2,把插件版本改成对应的3.1.2:
buildscript { repositories { google() jcenter() } dependencies { // 改成对应AS版本的插件 classpath 'com.android.tools.build:gradle:3.1.2' } }
修改Gradle wrapper版本
打开gradle/wrapper/gradle-wrapper.properties,把distributionUrl改成对应插件的Gradle版本:
# 3.1.2插件对应Gradle 4.4 distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip
版本对应关系参考:
- 插件3.0.1 → Gradle 4.1
- 插件3.0.2 → Gradle 4.1
- 插件3.1.2 → Gradle 4.4
3. 检查本地依赖文件
你的app模块依赖了libs目录下的jar包,如果这些jar包损坏,也会触发ZLIB错误:
- 打开
app/libs目录,删除所有jar包,重新下载对应版本的依赖 - 或者直接移除
implementation fileTree(dir: 'libs', include: ['*.jar']),改用远程依赖(如果有对应的maven库的话)
4. 强制刷新依赖并重新构建
如果上面的步骤都试过,还可以在终端执行以下命令强制刷新:
# Windows gradlew clean build --refresh-dependencies # Mac/Linux ./gradlew clean build --refresh-dependencies
内容的提问来源于stack exchange,提问作者Muhammad Ashfaq
相关产品推荐
相关产品推荐

