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

时间:2016-07-18 17:41:54

标签: android gradle gradle-plugin

我遇到了这种错误,如何修复它。

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.

39 个答案:

答案 0 :(得分:127)

我将Android Studio更新为2.3,它要求我将我的gradle插件更新为3.3,这会导致我的正在运行的项目出现问题。 我已经完成了所有的Stack解决方案,除了这个解决方法之外没有任何工作: 我在gradle-wrapper.properties中更改了我的发布网址。

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

我的项目正在运行。它刚要求我更新到 gradle build tools 25.0.0 ,我这样做了。现在一切都很好:))

  1. 转到项目部分,然后选择gradle scripts菜单。
  2. 在脚本下,选择gradle -wrapper.properties
  3. 菜单
  4. 然后将distributionUrl = https://services.gradle.org/distributions/gradle-2.2-all.zip替换为“distributionUrl = https://services.gradle.org/distributions/gradle-3.4.1-all的.zip“
  5. enter image description here 注意:发行版gradle会根据android studio的版本而改变。

答案 1 :(得分:17)

确保您拥有Internet连接:

1. 对于Window用户 转到> C:\Users\username\.gradle\wrapper\dists

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

3.删除有问题的gradle文件(即带有压缩文件夹的文件夹)   缺少没有提取的文件)

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

答案 2 :(得分:13)

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

按照以下步骤操作:

  1. 转到任何浏览器

  2. 键入gradle并按Enter键

  3. 您可以在

    之后指定所需的任何版本

    gradle关键字

    我正在下载gradle 3.3

    1. https://services.gradle.org/distributions 如果您需要

    2. ,请直接点击此链接
    3. 点击gradle 3.3 all.zip

    4. 等待下载完成

    5. 下载完成后 将文件解压缩到位置
    6. c://用户/您的电脑名称/.gradle/wrapper/dists

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

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

      3. 9.go to file&gt;设置&gt; bulid,exec,deployment&gt; gradle这个

        1. 现在将默认gradle更改为
        2. 使用本地gradle distributn

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

          C:\ Users \ your pc name.gradle \ wrapper \ dists \ gradle-3.3

          1. 点击OK

          2. 现在重新开始构建并

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

答案 3 :(得分:5)

请删除/.graddle/version /

下的所有文件夹

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

答案 4 :(得分:4)

删除损坏的文件

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

中的旧文件

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

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

答案 5 :(得分:4)

尝试下一步&#34;刷新&#34;你的IDE(android studio)

1.单击构建|,让Gradle重建自动生成的文件重建
2.同时尝试Choose File | Invalidate Caches/Restart.

答案 6 :(得分:4)

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

项目的build.gradle

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

手动平移设置

Manual gradle setup

答案 7 :(得分:2)

你可以试试这个

  1. 首先打开Android Studio&gt;打开你正在做的任何项目
  2. 点击文件&gt;设置&gt;构建,执行,部署&gt;摇篮
  3. 在项目级设置中,有两个选项可以使用默认或本地同步gradle。
  4. 现在从默认更改为本地gradle分发&gt; gradle Home

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

  6.   

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

    1. 点击OK

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

答案 8 :(得分:2)

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

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

答案 9 :(得分:2)

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

答案 10 :(得分:2)

我通过从给定链接下载当前版本的graddle来解决此问题 download latest version of graddle possibly graddle 3.3

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

现在我把那个下载的最新版本文件夹放在那里解压缩后。 现在重新启动了Android studio并解决了问题。

答案 11 :(得分:2)

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

答案 12 :(得分:1)

重新进口项目。 :) 我尝试清理缓存,刷新依赖项并不起作用但失败了。

答案 13 :(得分:1)

<块引用>

无法找到方法 ''void com.android.build.api.extension.AndroidComponentsExtension$DefaultImpls.androidTest$default(com.android.build.api.extension.AndroidComponentsExtension, com.android.build.api.extension.VariantSelector, kotlin.jvm.functions.Function1, int, java.lang.Object)'' 'void com.android.build.api.extension.AndroidComponentsExtension$DefaultImpls.androidTest$default(com.android.build.api.extension.AndroidComponentsExtension, com.android.build.api.extension.VariantSelector, kotlin.jvm.functions.Function1, int, java.lang.Object)'

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

重新下载依赖和同步项目(需要网络)状态 Gradle 构建进程(守护进程)的文件可能已损坏。停止所有 Gradle 守护进程可能会解决这个问题。

停止 Gradle 构建过程(需要重新启动)您的项目可能 使用与其他插件不兼容的第三方插件 项目中的插件或项目要求的 Gradle 版本 项目。

如果 Gradle 进程损坏,您也可以尝试关闭 IDE,然后杀死所有 Java 进程。

我在将 Android Studio 升级到 4.2.0 后发生了这种情况。

将 build.gradle 上的刀柄类路径更新到 2.35 为我解决了这些问题。

classpath "com.google.dagger:hilt-android-gradle-plugin:$2.35"

答案 14 :(得分:1)

在你的 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就完成了。

答案 15 :(得分:1)

  1. 在谷歌上搜索“下载 java 11”
  2. 点击 oracle 网站将您的 java 下载到您的平台并安装它。
  3. 进入android studio 点击CTRL+SHIFT+ALT(项目结构)
  4. SDK 位置选项卡显示您安装的 JDK 位置的路径enter image description here

答案 16 :(得分:1)

就我而言,我不得不改变:

plugins {
    id 'com.android.application'
    id 'kotlin-android'
    id 'kotlin-kapt'
    **apply plugin :'com.google.gms.google-services'**
}

plugins {
    id 'com.android.application'
    id 'kotlin-android'
    id 'kotlin-kapt'
    id 'com.google.gms.google-services'
}

答案 17 :(得分:1)

如果您在带有Gradle 6.5的Android Studio 4.1中看到此错误,则应返回到

classpath 'com.android.tools.build:gradle:4.0.2'

由于某些原因

classpath 'com.android.tools.build:gradle:4.2.0'

无法正常工作。

答案 18 :(得分:1)

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

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

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

如何解决此问题。

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

答案 19 :(得分:1)

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

答案 20 :(得分:1)

清除.gradle文件夹并重建

答案 21 :(得分:1)

终于解决了这个问题。

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

要解决它:

  1. 确保您保存了所有设置。
  2. 关闭您的混合版本的AS,删除所有文件。
  3. 将新版本提取到空文件夹。
  4. 它对我有用。

答案 22 :(得分:1)

就我而言,只需在gradle-wrapper中将http更改为https并同步即可。

答案 23 :(得分:0)

我遇到了同样的问题, 我打开了文件: my-project / gradle / wrapper / gradle-wrapper.properties, 将distributionUrl替换为

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

我打开了文件: my-project / build.gradle,在buildscript->依赖项下, 将类路径替换为

classpath'com.android.tools.build:gradle:4.0.0'

同步项目并正常运行

答案 24 :(得分:0)

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

答案 25 :(得分:0)

我将概括您可能面临的问题

内部module's build.gradle :

变化:

plugins {
    [...]
    apply plugin:'whatever_you_have'
}

plugins {
    [...]
    id 'whatever_you_have'
}

换句话说,用 apply plugin:

代替 id

答案 26 :(得分:0)

现在,在 2021 年 3 月,gradle 3.4.1-all 对我不起作用,并且出现了错误。因此,我在 build.gradle (project:) 中使用了以下元素:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
        maven {
            url "https://maven.google.com"
        }

        maven {
            url "https://s3.amazonaws.com/repo.commonsware.com"
        }
        maven { url "https://jitpack.io" }
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:4.0.2'

        classpath 'com.google.gms:google-services:4.3.5' // If you use play service 

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}
allprojects {
    repositories {
        jcenter()
        maven {
            url "https://s3.amazonaws.com/repo.commonsware.com"
        }
        maven {
            url "https://maven.google.com"
        }
        maven { url "https://jitpack.io" }
        google()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

答案 27 :(得分:0)

只需删除 gradle 文件夹,然后点击 android studio 再次让 Sync now 下载

答案 28 :(得分:0)

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

比Android Studio转到文件&gt;设置&gt; bulid,exec,deployment&gt; gradle并选择本地gradle选项并提供新下载的gradle的文件路径并点击确定它有效:)

答案 29 :(得分:0)

我遇到了这个问题,我刚刚删除了与android相关的所有内容 c://用户/您的电脑名称/ 它工作了

答案 30 :(得分:0)

如果在升级 Android Studio 后发生了这种情况,可能是由于过时的buildtool引起的,更新Android SDK BuildTools

答案 31 :(得分:0)

  1. 打开C:\ Users \ Username.gradle \ wrapper \ dists \

  2. 打开最新的gradle文件夹,例如的gradle-4.1-RC-1-所有

    你会找到一个名为 936kh1brdchce6fvd2c1o8t8x 的随机文件夹

  3. 下载类似名称的zip文件

    例如:https://downloads.gradle.org/distributions/gradle-4.1-rc-1-all.zip

  4. 将其保存在此文件夹中

  5. 重启Android工作室

    它将自动解压缩zip文件夹,错误将清除

答案 32 :(得分:0)

在我的情况下,原因在此行:

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.

我的项目使用了第三方插件,该插件与最新的gradle插件版本不兼容。因此,更新插件版本可能有助于解决该问题。

答案 33 :(得分:0)

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

因此,请尝试删除YourProject/gradle文件夹并清除项目以触发Gradle同步。

希望它适用于您的情况。

答案 34 :(得分:0)

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

答案 35 :(得分:0)

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

  1. 打开已成功构建的项目的gradle.wrapper-properties,然后复制显示distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.1-all.zip的行。使用它替换失败的项目中的相同值。那应该可以解决问题。

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

答案 36 :(得分: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 site,寻找我需要的版本。
  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创建项目时,我遇到了同样的问题。

答案 37 :(得分:0)

也许您可以在终端中运行./gradlew build -s,stacktrace会告诉您哪里出了问题。

答案 38 :(得分:0)

对于 Mac 用户

  1. 打开 /Users/username/.gradle/wrapper/dists
  2. 检查该目录中最新的 gradle-4.4-all
  3. 使用最新版本并将其放入Android Studio项目中的 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 ,然后再次同步

希望这会有所帮助。

谢谢