Android Studio编译时Gradle错误

26

我在Android Studio中有一个Android应用程序。 当我使用Gradle文件构建项目时,编译时会给出一个错误报告。

Error:org.gradle.api.internal.changedetection.state.DefaultFileCollectionSnapshotter$FileCollectionSnapshotImpl cannot be cast to
org.gradle.api.internal.changedetection.state.OutputFilesCollectionSnapshotter$OutputFilesSnapshot
请给我关于这个错误的解决方案。
8个回答

98

6
这是因为我的操作系统卡住了,我强制重启了操作系统(Android Studio仍然打开),导致出现了这个错误。 - Ninja Coding
它对我起作用了,但是在第二步之后我还有其他错误,所以我不得不在第三步之后使缓存失效。 - Flavio Capaccio
3
我已删除 .gradle 文件夹下的所有内容,问题已得到解决。 - Kevin ABRIOUX
2
先生,您刚刚拯救了我的工作。因为您,我不必无家可归、挨饿了。非常感谢您! - Neon Warge

3
这是我所做的方法:
Android Studio -> 文件 -> 清除缓存并重启

2

停止Gradle守护进程对我有用。

  • 打开终端并运行./gradlew --stop
  • 重新构建项目。

1

对我来说,我尝试过:

(不起作用):

  1. 使缓存无效。

  2. 停止第三方插件。

  3. 删除gradle仓库。

  4. 删除{project dir}/.gradle/2.*(不是当前gradle版本的文件)

(起作用):

最终的答案就像@MAC113的答案一样,

删除{project dir}/.gradle/2.10(2.10是我的当前gradle版本)


0

那些解决方案对我都不起作用,最终我做了如下处理:

  • 将项目克隆到新文件夹
  • 删除 .gradle 和 .idea 文件夹
  • 将其作为新项目添加(File > Open > [新文件夹])

现在可以工作了!这是我遇到过的一个奇怪问题。


0

删除 .gradle 文件夹对我有用


0
如果您正在使用GreenDao,您应该将其更新到最新版本。
classpath 'org.greenrobot:greendao-gradle-plugin:3.3.0' // add plugin
implementation 'org.greenrobot:greendao:3.3.0'

0

简单的解决方案!我已经修复好了。这是从Unity Studio导出的项目。

从Unity导出后,gradle看起来像是com.android.tools.build:gradle:2.1.0

然后我把它改成了com.android.tools.build:gradle:2.2.0,这样就可以工作了。

还要记得把仓库从mavencenteral改成jcenter()。

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.3'
    }
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接