错误:无法打开 zip 文件。 Gradle 的依赖缓存可能已损坏

Posted

技术标签:

【中文标题】错误:无法打开 zip 文件。 Gradle 的依赖缓存可能已损坏【英文标题】:Error:Failed to open zip file. Gradle's dependency cache may be corrupt 【发布时间】:2017-07-27 22:30:06 【问题描述】:

我更新了 android studio 2.3 并且有一个错误,gradle 没有构建并且它一直给我所有项目的相同错误。

Error:Failed to open zip file.
Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)
<a href="syncProject">Re-download dependencies and sync project (requires network)</a>
<a href="syncProject">Re-download dependencies and sync project (requires network)</a>

我已经搜索了解决方案,但没有找到任何解决方案。我试过了:

Invalidate Caches / Restart...

但什么都没有改变。

【问题讨论】:

Hamid Asghari 的回答是更好的解决方案 【参考方案1】:

查找文件 gradle-wrapper.properties

更新:

distributionUrl=https\://services.gradle.org/distributions/gradle-6.5.1-all.zip

【讨论】:

【参考方案2】:

Android Studio 4.1.1 有这个bug,

在 gradle-wrapper.properties 中

distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-bin.zip

这不会下载并且总是给出“gradle cache损坏”错误,但是一个小改动就可以正常工作

distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-all.zip

现在再次同步 gradle 就完成了。

【讨论】:

【参考方案3】:

转到项目窗格> Android > Gradle Scripts 并打开“graddle-wrapper.properties”文件检查分发 URL:

转到您的“.gradle/wrapper/dists/”文件夹并为我删除那个文件,它是“gradle-5.6.4-all”

然后回到 android studio 并点击 File > Sync Project with Gradle Files。它将再次开始下载

【讨论】:

这应该是选择的答案,因为它解决了使用相同版本 gradle 的所有其他项目的问题 这是最好的答案。跟着它走。【参考方案4】:

您可以从以下路径中删除最新的 gradle-.-all 文件夹 Windows:C:\Users\your-username.gradle\wrapper\dists

【讨论】:

【参考方案5】:

我遇到了这个问题,据我了解,这是因为 Android Studio 和 Gradle 插件版本的组合无效。我使用的是 Gradle 版本 5.4.1 和 Studio 版本 3.4,因此我将 Android Studio 更新到 3.5 并且问题得到了解决

【讨论】:

【参考方案6】:

1.转到“/Users/****/.gradle/wrapper/dists/gradle-.-all/*****”。

2.删除“gradle-.-all.zip.lck”文件。

3.使缓存失效并重启。

【讨论】:

【参考方案7】:

两天前我遇到了同样的问题,今天我能够像这样解决它:

    转到此路径C:\Users\user_name\.gradle\wrapper\dists,其中user_name 是您的用户名,如果您拥有PC 或您的公司名称。

    删除自您最新更新 android studio(例如 2.3 或其他版本)以来最新的 gradle-****-all 文件。

    如果您的 android studio 已打开,请将其关闭然后重新打开。将下载较新的 Gradle 版本,这需要时间取决于您的网速,下载前的下载大小约为 150-200 MB,因此如果 android studio 需要很长时间刷新,只需知道它的下载。 (要检查下载进度,请右键单击新的 gradle 文件夹,转到属性并检查大小)。

【讨论】:

【参考方案8】:

2018 年 7 月 17 日更新:

即使到今天以下解决方案仍然有效,我发现(感谢 Hamid Asghari 发布的答案和 Mahendra Dabi 发布的评论)只需删除 gradle dist 目录并重新启动 ide ,将解决问题(请阅读 Hamid 帖子以获得完整答案,并记住 OSX 和 Linux 具有相同的 gradle 路径)。

如果你仍然想遵循我原来的解决方案,你至少应该考虑使用更新版本的 Gradle(gradle 分发 repo 的直接链接:https://services.gradle.org/distributions/)


原始答案(2017 年 3 月 7 日):

我今天早上将 Android Studio 升级到 2.3 后也遇到了同样的问题。 解决问题:

1) 手动下载 Gradle 3.3 二进制文件(直接链接:https://services.gradle.org/distributions/gradle-3.3-bin.zip)

2) 打开你的 android studio 根目录,然后将 zip 解压到 gradle 文件夹(例如在我的 Debian 机器中,完整路径是 /opt/android-studio/gradle/gradle-3.3)

3) 打开 Android Studio,进入 File->Settings->Build, Exectution, Deployment->Gradle 并设置“Gradle home”指向你的新 gradle-3.3 文件夹。

4) 同步,您就可以开始了!

【讨论】:

擦除 dist 文件夹将使一切恢复正常 删除以下目录的内容:macOS:~/.gradle/wrapper/dists Windows:C:\Users\your-username\.gradle\wrapper\dists 如果“Gradle home”按钮被禁用,那么您可以选中“Gradle home”上方的“使用本地 gradle 分发”单选按钮 @Hamid Asghari 那我该怎么办?你告诉我。如果您愿意,我可以编辑“更新”。编辑:我编辑了“更新”让你开心。 在android studio中转到“文件”,点击“使缓存无效/重新启动”和“无效并重新启动”也可以【参考方案9】:

进入android studio中的“文件”,点击“invalidate caches/Restart”和“Invalidate and Restart”

这也有效

【讨论】:

【参考方案10】:

这发生在我身上是因为部分下载的 gradle 分发 zip 文件

要解决,只需转到以下路径

“C:/Users/your_username/.gradle”

从中拉出你的 gradle 路径 文件->设置->构建、执行、部署-> Gradle -> gradle服务目录路径。

删除部分下载的分发 gradle 文件夹

进入 Studio(无需重启)并执行 gradle 同步

【讨论】:

【参考方案11】:

你不需要清理目录中的所有文件 C:\Users\ ~User Name~ \.gradle\wrapper\dists。 然后再全部下载

相反,您可以删除您未能下载的 gradle 版本的文件夹。就我而言,它是 gradle-4.4-all 所以我只是删除了那个文件夹,android studio 为我重新下载了 gradle-4.4-all

如果您不知道正在下载的版本:

只需转到帮助菜单 > 在资源管理器中显示日志

他们你会发现idea.log 打开它并搜索

Could not install Gradle distribution from 'https://services.gradle.org/distribution`

一旦你找到它,你会找到你未能下载的 gradle 版本

【讨论】:

【参考方案12】:

从@Mikel Yang 那里得到启发,我发现不是删除 ~/.gradle/wrapper/dists/ 文件夹(这意味着在我的 Android Studio 上下载不同应用程序的 gradle 文件),而是决定更改gradle.wrapper.properties 文件到任何 latest gradle --all.zip。所以

Find 'gradle-wrapper.properties' in root project

distributionUrl=https\://services.gradle.org/distributions/gradle-lastest-all.zip

这样我可以节省一些数据和时间。

【讨论】:

【参考方案13】:

我正在将 gradle 从 4.1 升级到 4.10,但我的互联网连接超时。

所以我通过删除 .gradle/wrapper/dists 中的“gradle-4.10-all”文件夹解决了这个问题

【讨论】:

【参考方案14】:

修复 Gradle 安装

这通常发生在 Android Studio 首次启动时出现问题(例如系统崩溃、连接丢失或其他)。

要解决此问题,请关闭 Android Studio 并删除以下目录的内容,必要的文件将在 IDE 下次启动时下载。

ma​​cOS: ~/.gradle/wrapper/dists

Linux: ~/.gradle/wrapper/dists

Windows: C:\Users\your-username\.gradle\wrapper\dists

虽然可以手动下载 Gradle,但我建议让 Android Studio 自行完成。

【讨论】:

更好的解决方案。和推荐的方式 您可能在不同的 gradle build 上有不同的项目。因此,仅从 dist 中删除该目录。例如。我对 gradle-4.6-all 有问题,所以我只删除了 dists/gradle-4.6-all/ 这是解决此问题的解决方案,并且解释得很好。 我在 .gradle/wrapper 中找不到 dists 文件【参考方案15】:

只需删除并重新下载包装器 gradle。

Mac Home/.gradle/wrapper/dists/

删除 gradle 版本并在项目中同步 gradle 并运行项目。

【讨论】:

【参考方案16】:

这对我来说是最好的解决方案,只需按照此路径 C:\Users\yourusername.gradle\wrapper\dists 然后删除此文件夹中的所有文件。关闭您的 android studio 并重新启动它,它将自动下载更新的 gradle 文件。

【讨论】:

【参考方案17】:

在根项目中查找“gradle-wrapper.properties”

distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip

将“https”更改为“http”。

【讨论】:

我没有尝试手动下载 gradle,但我尝试删除 'dists' 文件夹,但它不起作用。这个答案对我有用。 你设置了代理吗? 在我的情况下是旧版本问题【参考方案18】:

****以下解决方案对我有用**** 从 C:\Users\Admin.gradle\wrapper\dists\ 手动删除所有文件

Admin 是我的用户名

【讨论】:

【参考方案19】:

有以下步骤可以解决此问题。


1. 转到C:\Users\~用户名~\.gradle\wrapper\dists。 2. 从 dists 文件夹中删除所有文件和文件夹。 3. 如果 Android Studio 已打开,则关闭任何打开的项目并重新打开该项目。 Android Studio 会自动下载所有需要的文件。

(所需时间取决于您的 Internet 速度(下载大小约为“89 MB”)。查看下载进度转到 C:\Users\ ~User Name~ \.gradle\wrapper\dists 文件夹并检查文件夹的大小。)

【讨论】:

以上是关于错误:无法打开 zip 文件。 Gradle 的依赖缓存可能已损坏的主要内容,如果未能解决你的问题,请参考以下文章

Android studio - 无法完成 gradle 执行 - 打开 zip 文件时出错

Gradle 同步失败:原因:打开 zip 文件时出错 Corrupt Dependency Cache

Android Studio -Libgdx-无法使用Gradle发行版“https://services.gradle.org/distributions/gradle-4.4-all.zip”执行

离子构建android错误gradle错误

错误记录Android Studio 编译报错 ( Gradle 下载错误导致 Failed to open zip file 报错 )

无法部署War文件:打开zip文件时出错