无法确定接口 com.android.builder.model.AndroidProject 的类路径

Posted

技术标签:

【中文标题】无法确定接口 com.android.builder.model.AndroidProject 的类路径【英文标题】:Could not determine the class-path for interface com.android.builder.model.AndroidProject 【发布时间】:2017-08-04 06:39:05 【问题描述】:

当我将 Eclipse 项目导入 android Studio 时,我遇到了这个问题: Gradle 'XNote' project refresh failed Error:Could not determine the class-path for interface com.android.builder.model.AndroidProject. 有谁知道为什么会这样?谢谢!

【问题讨论】:

我遇到了和你一样的问题 - 但只是在将 Android Studio 从 2.2.3 更新到 2.3 之后 【参考方案1】:

刚才我也遇到了同样的问题。

1.检查 build.gradle 文件中的类路径。 改为

类路径'com.android.tools.build:gradle:2.3.0'

    然后转到 gradle-wrapper.properties,并更改 distributionUrl

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

然后重建项目。它对我的帮助... 我想这肯定会对你有所帮助。

【讨论】:

在mac上,它的distributionUrl应该是“distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip”【参考方案2】:

我已经解决了这个问题。

Google 不再更新 ADT,因此当 Eclipse 将项目导出到 gradle 时,它​​会使用 Android Studio 不支持的旧 gradle 插件版本。

首先,您应该检查已安装的 gradle 插件的版本。 打开Android Studio的安装目录,然后打开目录\gradle\m2repository\com\android\tools\build\gradle\,你会看到你安装的所有版本。

然后打开Android Studio,打开选项卡'Project -> Gradle Scripts',编辑文件build.gradle,将gradle插件改成你已经安装的最新版本,比如2.3.0:

[OPTIONAL]这一步不是必须的,但如果你不这样做,你可能会看到这个问题:

A problem occurred evaluating root project 'XXX'.
> org/gradle/initialization/BuildCompletionListener

检查您在C:\Users\YOUR USER NAME\.gradle\wrapper\dists 安装的最新版本的gradle。 然后打开选项卡'Project -> Gradle Scripts',编辑文件gradle-wrapper.properties,在最后一行将gradle版本(注意:gradle,NOT gradle plugin)修改为最新。

最后,点击Build - Clean Project,完成! 如果它仍然警告“Gradle 项目同步失败...”,只需点击Try Again

最后,有人帮我把我的答案翻译成真正的英文,没有语法错误!!!

【讨论】:

我投了这个答案,因为他发布了如何找到要插入两个文件的版本号【参考方案3】:

只需更新两件事:-

1) 将您的Build.gradle 更新为

dependencies 
        classpath 'com.android.tools.build:gradle:3.0.1'

2) 更新 Gradle-wrapper.properties: (Change Android mode > Project mode then Extend Gradle and open Gradle-wrapper.properties)

替换distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip

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

这总能解决问题。对你有用吗

【讨论】:

【参考方案4】:

在 build.gradle 中将构建工具升级到 25.0.0 版后,我得到了它的工作:

buildToolsVersion '25.0.0'

并更改项目以使用最新的 gradle 版本 3.3 和默认的 gradle 包装器(文件 -> 设置 -> Gradle)

【讨论】:

这里也一样。但我首先必须安装版本 19,然后是 20,然后是 25。不知道为什么,但它现在可以工作了。我的猜测是我尝试编译的自定义控件可能基于 Android SDK 版本 19?只是猜测。【参考方案5】:

在我的情况下,我从项目中删除了文件夹 .idea,然后重新启动工作室会自动管理所有必需的文件夹和 gradle 工作。

【讨论】:

【参考方案6】:

首先,删除主目录中的 .gradle 文件夹,然后重启 Android Studio。

【讨论】:

【参考方案7】:

Palanivelraghul 是对的。工作室必须下载旧版本。然后它在完成后呈现了 3 个不同的选项。

选择顶部选项~“与 3.0.1 同步”

事件日志:

Gradle sync started > Project setup started > Gradle sync finished > Executing tasks:

[:app:generateDebugSources, :app:generateDebugAndroidTestSources, :app:mockableAndroidJar] > Gradle build finished.

【讨论】:

以上是关于无法确定接口 com.android.builder.model.AndroidProject 的类路径的主要内容,如果未能解决你的问题,请参考以下文章

为接口的@Embed覆盖@ManyToOne targetEntity

Maven模块化开发,spring无法注入其它模块中的接口

Java 基础:抽象类与接口

我认识的接口测试

Java 接口:interface

如何确定内部类是不是实现了接口?