Подтвердить что ты не робот

Почему я не могу найти ошибку com.android.tools.build: gradle?

Это основано на моем последнем question.

Следуя этому учебнику, я клонировал проект в свою машину и пытаюсь правильно построить проект.

В процессе исправления ошибки, полученной в моем последнем вопросе, я столкнулся с новой ошибкой.
Это раздел сборки script Я пытаюсь исправить/отредактировать

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'
      }
 }

Следуя инструкциям о том, как проверить версию Gradle, я проверил мой и увидел, что я запускаю Gradle версию 2.2.1. Исходя из этого, я изменил

    classpath 'com.android.tools.build:gradle:1.2.3'

to

   classpath 'com.android.tools.build:gradle:2.2.1'

Однако после изменения кода сборки script и попытки перестроить мой проект я получаю вышеупомянутую ошибку (полная трассировка стека ниже)

    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

Кто-нибудь знает, почему я получаю эту ошибку или как это исправить? Для меня не имеет смысла указывать компилятор Java (classpath) в версии Gradle, которую я даже не использую.

4b9b3361

Ответ 1

Вы вводите в заблуждение плагин android gradle и gradle.

Этот classpath 'com.android.tools.build:gradle:1.2.3' является плагином gradle для Android, и на данный момент 1.2.3 является последним.

Сама версия gradle находится в файле gradle -wrapper.properties. 2.4 - последняя версия,

Ответ 2

вы можете найти последнюю версию по этому адресу:
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
}

Ответ 3

В ответ на @Hamidreza проверьте maven и jcenter. Действительно, jcenter (в настоящее время) имеет более новые инструменты, чем maven.

Итак, в файле верхнего уровня build.gradle измените "mavenCentral" на "jcenter", как этот

repositories {
    //mavenCentral()
    jcenter()
}

Ответ 4

Я исправил эту точную проблему, обновив мою версию Android Studio. Я получал сообщение об ошибке Could not find com.android.tools.build:gradle:2.2.0 и в то время выполнял версию Studio 2.1.x.

Простое обновление до версии 2.2.2 сразу исправило мою проблему. Надеюсь, это поможет кому-то!

Ответ 5

Если вы находитесь за прокси-сервером, убедитесь, что для него настроена Android Studio. Он НЕ принимает настройки прокси-сервера.

Моя копия Studio + Gradle не была настроена для прокси-сервера, и в результате это дало мне эту ошибку. Было бы неплохо получить ясный "привет, приятель, я не могу попасть в Интернет", но вместо этого я получил эту ошибку.