未能解决:com.android.support.design:25.4.0

63
我已经将以下行添加到我的build.gradle(Module:app)文件中:

我已经将以下行添加到我的build.gradle(Module:app)文件中:

compile 'com.android.support:design:25.4.0' 

但是在执行Gradle时,我遇到了以下问题:

Failed to resolve: com.android.support.design:25.4.0

我从Android的support design library中获取了支持代码,并将其添加到一个新项目中。我将它作为依赖项添加到依赖部分中:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.3.1'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    testCompile 'junit:junit:4.12'

    compile 'com.android.support:design:25.4.0'
}

有什么想法,我做错了什么吗?


1
在您的管理器中安装25.4.0的支持。另外一件事是,您不能保留两个不同版本的支持库,例如您保留 com.android.support:appcompat-v7:25.3.1:-25.3.1 编译'com.android.support:design:25.4.0:-25.4.0 您不能像这样保留所有支持库都具有相同的版本。 - santoXme
11个回答

186
重要提示:支持库现在可通过Google的Maven存储库获得。您无需从SDK管理器下载支持库。有关更多信息,请参见支持库设置。
步骤1:打开应用程序的build.gradle文件。
步骤2:确保repositories部分包含maven部分,其中包含“https://maven.google.com”端点。例如:
allprojects {
    repositories {
        jcenter()
        maven {
            url "https://maven.google.com"
        }
    }
}

步骤三:将支持库添加到依赖项部分。例如,要添加v4核心工具库,请添加以下行:

dependencies {
    ...
    compile "com.android.support:support-core-utils:25.4.0"
}

37
可以将maven { url "https://maven.google.com" } 替换为 google() - Cristina De Rito
14
@Ultimecia 我尝试过使用google(),但它没有被识别。 - User
12
只有 Android Gradle 插件 v3.0.0-alpha1 才能识别 google() ,而这个版本只兼容 Android Studio 3.0 Preview。如果你必须继续使用稳定版的 Android Studio,那么在使用 google() 仓库和支持库 v25.4.0 来保持一致性之前,我建议等待稳定版 3.0 发布。你也可以注意到,从 v2.3.2 的 IDE 中推荐使用的最新版本是支持库 v25.3.1。 - Cristina De Rito
它仍然要求我通过SDK Manager的帮助来安装它。请参见此处http://imgur.com/a/iTIYV - Ajay S

20

以下是"Bhavesh Patadiya"更为更新的答案:

  1. In your project build.gradle file, add google() into the repositories blocks:

    repositories {
        jcenter()
        google()
    }
    
  2. Update the same file with a newer Gradle version:

    classpath 'com.android.tools.build:gradle:2.3.3'
    
  3. If the above cause you new issues or the same issue, exit Android-Studio, and delete the "gradle" folder/s (maybe also ".gradle" folder) and the "build" folder and sub-folders, and then open Android-Studio again.


我按照你说的做了,但是出现了这个错误:https://puu.sh/wryKA/41871bedca.png 我退出了Android Studio并删除了gradle和build文件夹,但仍然得到相同的错误。 - Enryu
我已经在使用更新的Gradle版本进行工作。我得到了和之前一样的错误,只是添加google()行导致Gradle出现问题。 - Enryu
@BrandonLavigne 这很奇怪。我却有相反的情况。你和我一样使用的是 Android Studio canary 4 吗? - android developer
非常有趣的评论。我尝试了Gradle 2.3.3,似乎它不包含方法google()。我将尝试删除您提到的文件夹。 - voghDev

5

始终保持appcompact版本和支持库版本相同,因此将com.android.support:design:25.4.0更改为com.android.support:design:25.3.1


5

巴韦什·帕塔迪亚先生给了我们一个好的解决方案。然而,我想分享更多内容,以使修复过程更加明确。

在项目目录下有两个“build.gradle”文件。它们的路径应为“您的项目根目录/build.gradle”和“您的项目根目录/app/build.gradle”。当您在Android Studio中看到错误信息并尝试跟踪文件时,您可能会打开第二个文件。

您应该将此语句添加到第一个文件(“您的项目根目录/build.gradle”)中。

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

并在第二个 build.gradle("Your-project-root-dir/app/build.gradle")中添加这些声明。

dependencies {
    ...
    compile "com.android.support:support-core-utils:27.0.2"
}

5
allprojects {
    repositories {
        google()
        jcenter()
        mavenCentral()
    }
}

8
请详细说明您的答案。 - Anthony Horne

1
你需要在SDK管理器中更新Android支持库。同时,设计库依赖于Support v4和AppCompat支持库。
相同版本的Android支持库必须与其他库相同。
compile 'com.android.support:appcompat-v7:25.3.1'  <-- same
compile 'com.android.support:design:23.3.1'  <-- same

1
添加后:

maven {
    url "https://maven.google.com"
}

请确保您的Gradle同步处于在线模式

您可以从以下位置检查:

Android Studio -> 首选项 -> 构建、执行、部署 -> Gradle -> 离线工作(确保未选择此复选框)


0

以上的回答对我没有任何帮助。

  • 尝试同步项目-失败
  • 尝试构建项目-失败

问题已找到:

Sdk支持库已损坏

.

问题修复:

打开SDK管理器,切换到"SDK工具"选项卡。如果"Support Repository"前的勾选已经选中,请先取消勾选然后点击确定,这将会删除仓库里面所有的文件。接着再次勾选"Support Repository",点击确认并重新安装仓库。


这并没有真正回答问题。如果您有不同的问题,可以通过点击提问来提出。一旦您拥有足够的声望,您还可以添加赏金以吸引更多关注此问题。- 来自审核 - Thom
@Thom 这不是回答问题了吗?他列出了问题所在和解决方法。 - Michael Puckett II
感谢支持。我理解@Thom所说的观点。问题可能不支持答案,但这取决于用户是否发现难以找到问题。 - opalfire

0

当在app.build中添加andoridtestImplementation时,会出现此问题。

从app.build中删除testImplementationandroidTestImplementation即可解决此问题。


在我的情况下,我不小心退出了Android Studio。当我重新打开并开始出现gradle失败错误“无法解析:com.android.support”时,这个错误并没有提供太多的信息来解决问题。我一直在寻找解决方法,然后我看到了你的评论。我注释了测试依赖项并再次同步。它又开始工作了。后来我确保测试依赖项的拼写,我发现当我退出Android Studio时,它会将androidTest库更改为我的项目中一个可绘制资源文件的名称之一。这是Android Studio中的一个错误。 谢谢@Gowthaman - Zeeshan

0
如果您仍然遇到问题,请检查离线模式的项目设置。如果离线模式已启用,则关闭并同步该项目。这解决了我的问题。

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