Gradle的依赖项缓存可能已损坏(有时会在网络连接超时后发生。)


88

我遇到这种错误,如何解决。

Error:Unable to load class 'org.gradle.tooling.internal.protocol.test.InternalTestExecutionConnection'.
Possible causes for this unexpected error Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)
Re-download dependencies and sync project (requires network)The state of a Gradle build process (daemon) may be corrupt. Stopping all Gradle daemons may solve this problem.
Stop Gradle build processes (requires restart)Your project may be using a third-party plugin which is not compatible with the other plugins in the project or the version of Gradle requested by the project.In the case of corrupt Gradle processes, you can also try closing the IDE and then killing all Java processes.

请检查我的答案。就我而言,这是JDK路径问题。 stackoverflow.com/a/44583007/3265444
Ajji

Answers:


166

我将Android Studio更新为2.3,并要求我将gradle插件更新为3.3,这会导致我的运行项目出现问题。我已经经历了所有的Stack解决方案,但除了这种解决方法外,没有其他解决方法:我使用此方法 更改了gradle-wrapper.properties中的分发URL。

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

(此处的永久链接列表:https : //services.gradle.org/distributions/

我的项目已启动并正在运行,它只是要求我更新到gradle构建工具25.0.0(我这样做了)。现在一切都很好:)

  1. 转到项目部分,然后选择gradle脚本菜单。
  2. 在脚本下,菜单选择gradle -wrapper.properties
  3. 然后,将“ distributionUrl = https://services.gradle.org/distributions/gradle-2.2-all.zip”替换为“ distributionUrl = https://services.gradle.org/distributions/gradle-3.4.1-all.zip”

在此处输入图片说明 注意:发行版gradle的更改取决于android studio的版本。


6
完美的解决方案,经过几天的搜索,为我工作。谢谢。
Franklyn

1
在哪里找到gradle-wrapper.properties?我看到的是一个jar文件
portfoliobuilder

它在项目的Gradle文件夹层次结构中。
Taimur Khan

1
谢谢!但是初始化每个新项目后问题仍然存在。有永久的解决方法吗?
Oniya Daniel

2
对于将来更新此版本的任何人,可以在以下位置找到Gradle版本的列表:services.gradle.org/distributions只需右键单击并保存链接位置,即可在gradle文件中使用String。
PGMacDesign

44

然后确保您具有Internet连接:

1.对于窗口用户,请转到> C:\Users\username\.gradle\wrapper\dists

2.对于Linux用户,请 访问$HOME/.gradle (~/.gradle)和/或(在特定项目下) <PROJECT_DIR>/.gradle

3.删除有问题的gradle文件(例如,压缩的文件夹丢失而没有提取的文件)

4.使用gradle文件同步项目。


3
就我而言,下载Gradle时互联网中断了。单击“再试一次”没有执行任何操作(在Android Studio 3.1.3上)。删除C:\Users\username\.gradle\wrapper\dists文件夹确实可以修复它,并允许它再次下载。
ub3rst4r

15

观看教程 https://www.youtube.com/watch?v=u92_73vfA8M

要么

遵循步骤:

  1. 转到任何浏览器

  2. 输入gradle并按Enter

您可以在

gradle关键字

我正在下载gradle 3.3

  1. https://services.gradle.org/distributions 单击此链接,该链接直接在描述中显示

  2. 点击gradle 3.3 all.zip

  3. 等待下载完成

  4. 下载完成后,将文件提取到该位置

c://用户/您的电脑名称/.gradle/wrapper/dists

  1. 等到提取需要5分钟才能完成

  2. 现在在android studio中打开您的项目

9.转到文件>设置> bulid,exec,部署> gradle

  1. 现在将使用默认gradle更改为

使用本地gradle分发

选择您提取gradle 3.3.zip的位置

C:\ Users \您的电脑名称.gradle \ wrapper \ dists \ gradle-3.3

  1. 点击确定

  2. 现在,构建再次开始,

您现在可以看到构建成功并且错误已解决


此答案应该涵盖问题的所有流程
JuLes

为什么需要浏览器?
IgorGanapolsky

在本地下载gradle文件以用于本地后续构建
Manoj Selvin

14

删除损坏的文件

当Gradle文件由于某些其他原因未完全下载或损坏时,会发生此错误,因此我们必须重新下载文件。简单的方法是删除旧文件

C:\Users\username.gradle\wrapper\dists

并重建项目,Android Studio将自动下载新文件。


感谢您的共享,它总是无法与我一起下载,因此即使我更改了版本,也无济于事,但是删除文件并重试一次就可以了,谢谢。
Mousa Alfhaily

7

如果您手动设置gradle,还请确保项目build.gradle verison与之兼容。请参阅以下示例。

项目的build.gradle

dependencies {
        classpath 'com.android.tools.build:gradle:2.3.2'
    }

手动Gradle设置

手动Gradle设置


6

请删除/.graddle/version/下的所有文件夹

这就是我解决我的问题的方式。祝好运



3

我通过从链接下载当前版本的graddle解决了这个问题,该链接提供了 最新版本的graddle可能是graddle 3.3

然后在下一步中,我显示了隐藏的系统文件并删除了其中的previuos版本文件夹后,从Mac上的主目录访问了.graddle / wrapper / dists目录。

现在,我将解压后的文件夹下载到最新版本。现在重新启动了Android Studio,问题已解决。


2

你可以试试这个

  1. 首先打开您的Android Studio>打开您正在做的任何项目
  2. 单击文件>设置>构建,执行,部署> Gradle
  3. 在项目级别设置中,有2个选项可以使用默认或本地同步gradle。
  4. 现在从默认更改为本地gradle发行版> gradle主页

  5. 选择计算机上的路径。

C:\ Program Files \ Android \ Android Studio \ gradle \ gradle-4.1

  1. 点击确定

  2. 现在,构建再次开始,应该解决。


2

转到“ C:\ Users \ .gradle \ caches \”。删除文件夹中的所有文件。然后同步Gradle并重建项目。


谢谢。至少4个小时我试图解决此问题,除此以外,所有关于stackoverflow的解决方案均失败。
迪卡

2

如果您使用的是Ubuntu,那么首先您要取消隐藏主目录或android studio文件夹中的所有文件:

  1. 转到主目录并使用ctrl + h取消隐藏所有文件
  2. 您发现.gradle文件夹
  3. 内部.gradle->包装器
  4. 你可以找到dists文件夹,所以删除这个dists文件夹
  5. 创建一个新项目,然后重新下载Gradle文件
  6. 刚果您成功建立了项目

1

在gradle-wrapper.properties中查看distributionUrl设置。我将https更改为http,然后解决了我的问题。






1

终于解决了这个问题。

如果仅将新版本的文件复制到旧文件夹并覆盖文件,则可能会遇到与我相同的问题。

解决方法:

  1. 确保您保存了所有设置。
  2. 关闭AS,删除混合版本的所有文件。
  3. 将新版本解压缩到您的空文件夹中。

这个对我有用。


为我工作。应用是通过自助服务进行部署的,无需先清理旧目录。请求他们这样做解决了该问题。谢谢!
史蒂文·L

1

也许您可以./gradlew build -s在终端中运行,stacktrace会向您显示哪里出错了。


以我为例,我发现我的一个存储库发生故障,导致gson依赖项下载失败
Scott Wang,

1
此命令可帮助我找到正确的损坏的gradle文件。
Joey Chong

1

对我来说,我正在从github克隆一个项目,该项目使用的gradle版本高于我安装的gradle版本。我有两个选择:

  1. 打开您已成功构建的项目的gradle.wrapper-properties,然后复制显示为的行distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.1-all.zip。使用它替换失败的项目中的相同值。这应该够了吧。

  2. 如果用于构建项目的gradle版本高于您刚添加的gradle版本,则您的构建仍可能会失败。为此,您应该将gradle版本更新为最新版本。


1

我删除了gradle文件夹,然后进行了重建,一切正常


1

这个问题的答案很多,但有一些是有帮助的。我想给出准确和最新的答案。

Gradle的依赖项缓存可能已损坏(有时会在网络连接超时后发生。)

当您的互联网连接中断或在Android Studio下载所需的依赖项时使计算机进入睡眠状态时,会发生此错误。

如何解决这个问题。

  1. 找出项目的Gradle版本。您会发现gradle-wrapper.propertiesdistributionUrl我的gradle发行版中https\://services.gradle.org/distributions/gradle-6.5-all.zip,这意味着gradle-6.5-all.zip需要下载,而由于连接超时,它现在已损坏。让我们找出该文件夹并将其删除。
  2. 转到.gradle文件夹,然后wrapper再到,dists然后找到与下载所需的gradle版本名称匹配的文件夹。就我而言,就是gradle-6.5-all.zip选择此文件夹并将其删除。
  3. 现在同步项目,并确保您具有良好的Internet连接和设置,以防止系统在下载内容时进入睡眠状态。

0

如果您更新了android studio,请转到FILE,Project Structure,Project,然后检查gradle版本。在此之前,请检查C:\ Program Files \ Android \ Android Studio \ gradle中的gradle版本,并检查该版本是否匹配,然后再次同步,否则请更改android studio中的gradle版本并再次同步。


0

克隆AnySoftKeyboard并在Android Studio中将其打开后,我遇到了类似的问题。对我有用的是删除AynSoftKeyboard/gradle文件夹,然后通过菜单项清理项目Build > Clean Project

所以尝试删除 YourProject/gradle文件夹并清理项目以触发Gradle同步。

希望它适合您的情况。


0

此处为您的操作系统下载gradle并解压缩文件并将内部文件夹粘贴到installLocation / gradle

比在Android Studio中转到文件>设置> bulid,exec,部署> gradle并选择本地gradle选项,并提供新下载的gradle的文件路径,然后单击确定即可:)


0
  1. 删除C:\ Users \ Administrator.gradle \ caches \ xxx(xxx gradle版本)
  2. 重建

0

我有这个问题,我只是删除了c:// user / your pc name /中与android有关的所有东西,并且它起作用了


我有同样的问题,只是删除了所有内容,但仍然收到相同的错误。
萨维塔·夏尔马


0

有时问题是项目文件中的gradle包装器文件。打开您当前的项目gradle文件并删除gradle wrapper.zip文件,然后同步项目即可。


0

这是我的场景:我不得不使用另一个Android Studio版本(3.2.1),而Gradle版本是4.6。为此,我下载了Android Studio的.zip版本。起初它没有用,即使我创建了一个新项目,Gradle也没有用。但是经过一些研究并从这篇文章中获得了一些帮助之后,我做了以下工作:

  1. 我转到我的gradle文件路由(android-studio \ gradle)并 删除了所有gradle-4.6文件。
  2. 之后,我去了gradle-wrapper.properties并获得了我需要的Gradle版本(gradle-4.6-all.zip)。
  3. 我去了gradle网站,寻找我需要的版本。
  4. 将其下载并解压缩到我的Android Studio的gradle文件路径中,请参见步骤1。
  5. 我转到Android Studio设置(文件/设置/ Gradle),并将“使用默认gradle包装器(推荐)”选项更改为“使用本地gradle分发”
  6. 我选择了下载Gradle版本的路径,即步骤4,并应用了更改。
  7. 以防万一,我使用了“无效的缓存/重新启动”选项(文件/“无效的缓存/重新启动”)。
  8. 之后,我使用了“同步项目和Gradle文件”并开始工作!

顺便说一句,我正在使用Android Studio 3.2.1 zip版本。当我尝试使用较旧的Android Studio创建项目时,我遇到了同样的问题。


0

对于Mac用户

  1. 打开/ Users /用户名/.gradle/wrapper/dists
  2. 查看最新的gradle-4.4-all目录中
  3. 使用最新版本并将其放在Android Studio Project中的gradle-wrapper.properties

就我而言distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip,这就是为什么我遇到问题的原因。

我将其更改为distributionUrl = https://services.gradle.org/distributions/gradle-4.4-all.zip并再次同步

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.