为什么我得到"找不到com.android.tools.build:gradle"错误?

com*_*der 20 build-automation build gradle build.gradle android-gradle-plugin

这是基于我的上一个问题 .

按照本教程,我将项目克隆到我的机器中,并尝试正确构建项目.

在修复我在上一个问题中遇到的错误的过程中,我遇到了一个新错误.
这是我试图修复/编辑的构建脚本的一部分

buildscript {
     repositories {
         mavenCentral()
         mavenLocal()
         maven { url 'https://github.com/steffenschaefer/gwt-gradle-plugin/raw/maven-repo/' }
      }
      dependencies {
            classpath 'de.richsource.gradle.plugins:gwt-gradle-plugin:0.3'
            classpath 'com.android.tools.build:gradle:1.2.3'
      }
 }
Run Code Online (Sandbox Code Playgroud)

说明如何检查摇篮版本,我查我的,看到我是跑摇篮版本2.2.1.基于此,我改变了

    classpath 'com.android.tools.build:gradle:1.2.3'
Run Code Online (Sandbox Code Playgroud)

   classpath 'com.android.tools.build:gradle:2.2.1'
Run Code Online (Sandbox Code Playgroud)

但是在更改了构建脚本代码并尝试重建我的项目之后,我得到了上面提到的错误(下面的完整堆栈跟踪)

    Error:Could not find com.android.tools.build:gradle:2.2.1.
Searched in the following locations:
    file:/C:/Program Files/Android/Android Studio/gradle/m2repository/com/android/tools/build/gradle/2.2.1/gradle-2.2.1.pom
    file:/C:/Program Files/Android/Android Studio/gradle/m2repository/com/android/tools/build/gradle/2.2.1/gradle-2.2.1.jar
    https://repo1.maven.org/maven2/com/android/tools/build/gradle/2.2.1/gradle-2.2.1.pom
    https://repo1.maven.org/maven2/com/android/tools/build/gradle/2.2.1/gradle-2.2.1.jar
    file:/C:/Users/chris/.m2/repository/com/android/tools/build/gradle/2.2.1/gradle-2.2.1.pom
    file:/C:/Users/chris/.m2/repository/com/android/tools/build/gradle/2.2.1/gradle-2.2.1.jar
    https://github.com/steffenschaefer/gwt-gradle-plugin/raw/maven-repo/com/android/tools/build/gradle/2.2.1/gradle-2.2.1.pom
    https://github.com/steffenschaefer/gwt-gradle-plugin/raw/maven-repo/com/android/tools/build/gradle/2.2.1/gradle-2.2.1.jar
Required by:
    :theplanethatcouldntflygood:unspecified
Run Code Online (Sandbox Code Playgroud)

有谁知道我为什么会收到此错误或如何解决此问题?将Java编译器(类路径)指向我甚至不使用的Gradle版本是没有意义的.

小智 26

你在android gradle插件和gradle版本之间感到困惑.

classpath 'com.android.tools.build:gradle:1.2.3'是Android的gradle插件,截至目前,1.2.3是最新版本.

gradle版本本身位于gradle-wrapper.properties文件中.2.4是最新版本,


Ham*_*egh 6

你可以在这个地址找到最新版本:
repo1.maven.org/maven2/com/android/tools/build/gradle
jcenter.bintray.com/com/android/tools/build/gradle

buildscript {
repositories {
    maven { url "https://jcenter.bintray.com" }
    maven { url "http://repo1.maven.org/maven2" }
}
dependencies {
    classpath 'com.android.tools.build:gradle:2.2.0'
}
}

allprojects {
repositories {
    maven { url "https://jitpack.io" }
    maven { url "https://jcenter.bintray.com" }
    maven { url "http://repo1.maven.org/maven2" }
}
}

task clean(type: Delete) {
delete rootProject.buildDir
}
Run Code Online (Sandbox Code Playgroud)


小智 6

Per @ Hamidreza的答案,检查mavenjcenter repos.事实上,jcenter(目前)拥有比maven更新的工具.

因此,在顶级build.gradle文件中,将"mavenCentral"更改为"jcenter",如下所示

repositories {
    //mavenCentral()
    jcenter()
}
Run Code Online (Sandbox Code Playgroud)