Android Studio:Gradle刷新失败 - 找不到com.android.tools.build:gradle:2.2.0-alpha6

56

我刚从git上下载了一个Android项目,但每次尝试打开它时,Android Studio都会给我以下错误提示;

Error:Could not find com.android.tools.build:gradle:2.2.0-alpha6.
Searched in the following locations:
    https://repo1.maven.org/maven2/com/android/tools/build/gradle/2.2.0-alpha6/gradle-2.2.0-alpha6.pom
    https://repo1.maven.org/maven2/com/android/tools/build/gradle/2.2.0-alpha6/gradle-2.2.0-alpha6.jar
    https://maven.fabric.io/public/com/android/tools/build/gradle/2.2.0-alpha6/gradle-2.2.0-alpha6.pom
    https://maven.fabric.io/public/com/android/tools/build/gradle/2.2.0-alpha6/gradle-2.2.0-alpha6.jar
Required by:
    newApp_Android:app:unspecified
我已在本地安装了Gradle,并通过系统设置环境路径。在“项目结构/项目”下,使用以下设置;
Gradle Version : 2.10
Android Plugin Version : 2.2.0-alpha6
Android Plugin Repository : jcenter
Default Library Repository : jcenter

有人能指点我一下吗?


1
这些链接似乎没有在JCenter中进行搜索。https://bintray.com/android/android-tools/com.android.tools.build.gradle - OneCricketeer
7个回答

187

这是因为构建过程无法在Maven仓库中找到依赖项。请在您的项目级别的build.gradle文件中添加jcenter()mavenCentral()

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

8
谢谢,对我非常有用。我没有替换mavenCentral(),只是添加了jcenter()。这使得无需回到旧版本的Gradle,就像被接受的答案所建议的那样。 - luben
2
如果您在build.gradle中删除mavenCentral()并仅保留所有依赖项的jcenter(),则可能会在Android Studio中看到性能提升-请参见https://code.google.com/p/android/issues/detail?id=72061。请注意,对于项目依赖项,如果您有未托管在JCenter上的依赖项工件,则可能需要保留`mavenCentral()`。 - Sean Barbeau
1
我应该移除mavenCentral吗? - Arnold Roa
1
@ArnoldRoa 是的,你可以移除 mavenCentral()。 - sembozdemir
@Bhavit S. Sengar,感谢您改进说明。但是,我不确定您是否需要在项目级别的build.gradle文件中使用mavenCentral()。 - sembozdemir
显示剩余2条评论

9

我在尝试为 Android 构建 ionic2 项目时遇到了类似的错误。这是在 Android Studio 更新其 Gradle 后发生的。

Error: cmd: Command failed with exit code 1 Error output:

错误:构建失败并出现异常。

我读了上面的答案,指向需要更新“build.gradle”文件,但是项目中有多个同名文件。对我有帮助(希望对于正在处理angular2/ionic2项目并遇到此问题的人们有所帮助)的是更新下列路径下的build.gradle文件。

[rootOfPorject]/platforms/android/CordovaLib/build.gradle

这个文件缺少了 jcenter() 条目,现在仓库部分看起来像这样,并且非常有效。

repositories {
    jcenter()
    mavenCentral()
}

希望这篇文章能为其他人节省时间。
编辑:正如@rcerecedar提到的那样,你可能还需要在以下文件中添加 jcenter()
[rootOfPorject]/platforms/android/build.gradle

在这个文件中,你应该检查它是否存在于 buildscript -> repositories 中,也可以选择性地检查是否存在于 allprojects -> repositories 中。


1
非常感谢。这确实帮了我很多,但最终我不得不在两个文件中都插入jcenter()行,即“main”build.gradle和Cordovalib中的一个文件。 - rcerecedar
谢谢@rcerecedar,我已经更新了我的答案,包括这些信息。 - Hassan

4

1. 转到 "C:\Program Files\Android\Android Studio\gradle\m2repository\com\android\tools\build\gradle"。

2. 查看最新文件夹名称,例如 "2.2.3",将其复制。

3. 转到 build.gradle(Module:yourapp) 文件,

粘贴至此处:

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

1
我成功的做法是按照 "geekydhaval" 的建议去做,再次感谢。但是我回到了依赖项 { classpath 'com.android.tools.build:gradle:2.3.0' } 并将版本从 2.3.2 改为 2.3.0,然后构建成功了。

这只是一条评论,而不是答案。当你的声望更高时,你将能够发布评论。目前,请坚持提出那些不需要作者澄清的具体问题和答案。 - anonymous2
谢谢。但请在这里始终给出答案。不要其他的东西。 :) - geekydhaval

1
如果你的电脑有防火墙配置,请在gradle.properties中尝试以下操作。
systemProp.https.proxyHost=<proxyHostName>
systemProp.https.proxyPort=8080
systemProp.https.proxyUser=<user id>
systemProp.https.proxyPassword=<password>
systemProp.https.nonProxyHosts=www.google.com|localhost

gradle.properties位于哪里? - nano

0

gradle:2.2.0-alpha6 替换为 gradle:2.2.0-alpha3
如果这不起作用,请将其替换为 gradle:2.2.0-alpha2


0

由于Gradle正在更新,先前的版本将被新版本替换,因此我们必须在代码中更改Gradle版本,因为它将引用先前的版本并显示以下错误。

无法解决':classpath'的所有依赖项。 找不到com.android.tools.build:gradle:2.2.3。 在以下位置搜索: file:/home/ubuntu/.m2/repository/com/android/tools/build/gradle/2.2.3/gradle-2.2.3.pom file:/home/ubuntu/.m2/repository/com/android/tools/build/gradle/2.2.3/gradle-2.2.3.jar https://repo1.maven.org/maven2/com/android/tools/build/gradle/2.2.3/gradle-2.2.3.pom https://repo1.maven.org/maven2/com/android/tools/build/gradle/2.2.3/gradle-2.2.3.jar https://oss.sonatype.org/content/repositories/snapshots/com/android/tools/build/gradle/2.2.3/gradle-2.2.3.pom https://oss.sonatype.org/content/repositories/snapshots/com/android/tools/build/gradle/2.2.3/gradle-2.2.3.jar 由以下项目要求: :: 打开文件。
解决方法是在 build.gradle 文件中添加库,如下所示:
buildscript {
repositories {
    mavenCentral()
    google()
    jcenter()
}

或者

进入文件浏览器并搜索

C:\Program Files\Android\Android Studio\gradle\m2repository\com\android\tools\build\gradle

并查看最新版本的Gradle名称

Gradle 2.2.0
Gradle 3.2.1
Gradle 2.1.0

选择最新版本,例如3.2.1,并将其粘贴到build.gradle文件的dependencies部分中。

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

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