Не удалось найти com.android.tools.build:gradle:3.0.0-alpha1 в круге ci

Я обновляю плагин gradle до последней версии: com.android.tools.build:gradle:3.0.0-alpha1, и эта ошибка произошла:

export TERM="dumb"
if [ -e ./gradlew ]; then ./gradlew test;else gradle test;fi

FAILURE: Build failed with an exception.

What went wrong:
    A problem occurred configuring root project 'Android-app'. Could not
 resolve all dependencies for configuration ':classpath'. Could not
 find com.android.tools.build:gradle:3.0.0-alpha1. Searched in the
 following locations:
 https://jcenter.bintray.com/com/android/tools/build/gradle/3.0.0-alpha1/gradle-3.0.0-alpha1.pom
 https://jcenter.bintray.com/com/android/tools/build/gradle/3.0.0-alpha1/gradle-3.0.0-alpha1.jar
 Required by:

Current circle.yml

dependencies:
   pre:
      - mkdir -p $ANDROID_HOME"/licenses"
      - echo $ANDROID_SDK_LICENSE > $ANDROID_HOME"/licenses/android-sdk-license"
      - source environmentSetup.sh && get_android_sdk_25

   cache_directories:
    - /usr/local/android-sdk-linux
    - ~/.android
    - ~/.gradle
   override:
    - ./gradlew dependencies || true

test:
  post:
    - mkdir -p $CIRCLE_TEST_REPORTS/junit/
    - find . -type f -regex ".*/target/surefire-reports/.*xml" -exec cp {} $CIRCLE_TEST_REPORTS/junit/ \;

machine:
    java:
        version: oraclejdk8

Изменить: Мой файл gradle:

buildscript {
  repositories {
    jcenter()
    maven {
      url 'https://maven.google.com'
    }
  }
  dependencies {
    classpath 'com.android.tools.build:gradle:3.0.0-alpha1'
    classpath 'com.google.gms:google-services:3.0.0'
    classpath "io.realm:realm-gradle-plugin:3.1.3"
  }
}

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

task clean(type: Delete) {
  delete rootProject.buildDir
}

Ответы

Ответ 1

В Google появился новый репозиторий Maven, поэтому это может быть причиной.

https://android-developers.googleblog.com/2017/10/android-studio-30.html раздел Google Maven Repository

https://developer.android.com/studio/preview/features/new-android-plugin-migration.html https://developer.android.com/studio/build/dependencies.html#google-maven

Поэтому возможно (не проверено) добавить зависимость от репозитория Maven:

buildscript {
    repositories {
        ...
        // You need to add the following repository to download the
        // new plugin.
        google() // new which replace https://maven.google.com
        jcenter()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:3.3.0'  //Minimum supported Gradle version is 4.6.
    }
}

Ответ 2

Для компиляции с помощью командной строки мне нужно включить maven repo в BOTH buildscript и allprojects.

root build.gradle:

buildscript {
    repositories {
        jcenter()
        maven { url 'https://maven.google.com' }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0-alpha2'
        ...
    }
}

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

В блоке buildscript необходимо найти AGP и в блоке allprojects найти пакеты android.arch и com.android.databinding (и другие)

UPDATE: Похоже, новое репо называется google(), но мне все равно нужно объявить его в обоих местах.

Ответ 3

Чтобы синхронизировать все ответы здесь и в другом месте:

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

  } }

Сделайте свой buildscript в build.gradle похожим на это. Он находит все из них между google и jcenter. Только один из них не найдет всех зависимостей от этого ответа.

Ответ 4

Решение mtrakal работало нормально.

Добавлен в gradle.build:

buildscript {
    repositories {
        maven { url 'https://maven.google.com' }
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0-alpha2'

        // NOTE: Do not place your application dependencies here; 
        // they belong in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

Затем он автоматически обновляется до альфа2.

Недействительность кэшей и перезапуск всех в порядке.

Файл | Invalidate Caches/Restart

выберите "Invalidate and Restart"

Ответ 5

Я сделал это:

нажмите SDK Manager:

enter image description here

Изменитесь в обновлениях к Канарскому каналу, проверьте и обновите это...

enter image description here

Затем перейдите в build.gradle и измените версию компиляции на 26.0.0-beta2:

enter image description here

После этого перейдите в gradle/build.gradle и измените путь к классам зависимостей 'com.android.tools.build:gradle:3.0.0-alpha7':

enter image description here

После синхронизации проекта... Это работает для меня! Я надеюсь, что я помог... TKS!

Ответ 6

Убедитесь, что вы добавили следующую строку в верхний уровень build.gradle, и это должно исправить ее.

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

Я получил ту же самую ошибку, о которой вы говорили выше, как только я добавил эту запись, все сработало.

Ответ 7

Обновление: Невероятно разочаровывает, но перенаправление Google в репозитории maven.google.com кажется бесполезным с загрузкой ресурсов. Если вместо этого вы установите свой репозиторий maven { url 'https://dl.google.com/dl/android/maven2' } файлы будут разрешены. Вы можете это доказать, пытаясь получить полностью квалифицированный ресурс в https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.0.0-alpha1/gradle-3.0.0-alpha1.pom 3.0.0 Alpha

Это связано с тем, что в настоящее время gradle:3.0.0-alpha1 обслуживается только через новый репозиторий 'https://maven.google.com', но в настоящее время на этом сайте 404s в противном случае, будучи общедоступным каталогом, вы увидите список всех имеющихся файлов просто перейдя в это место в вашем браузере. Когда они разрешат их простоя, ваша сборка CI должна немедленно пройти.

Ответ 8

Я нахожу это в google: https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration.html

В нем упоминается, что нам нужно

  • Обновить версию Gradle до gradle -4.1-all (изменить gradle-wrapper.properties на distributionUrl=\https\://services.gradle.org/distributions/gradle-4.1-all.zip
  • Добавить google() в репозитории repositories { google() } и dependencies { classpath 'com.android.tools.build:gradle:3.0.0-beta7' }

Возможно, вам понадобится Android Studio 3

Ответ 9

Android Studio (Preview) иногда рекомендует обновить плагин Gradle, который еще не доступен (Google забыл опубликовать его?). Такие как сегодня с

'Com.android.tools.build:gradle:3.1.0-beta1'

Я обнаружил, что могу видеть текущие версии com.android.tools.build:gradle здесь, а затем просто выбираю самые новые:

https://dl.google.com/dl/android/maven2/index.html

Я только что нашел эту бета1 ошибку в Android Bug Tracker. Я также только что узнал, что Android Studio> Справочное меню> Отправить отзыв привел меня в багтрекер.

Нашел временное решение на androiddev reddit для проблемы 3.1.0-бета1: либо откатитесь на Preview Canary 8, либо переключитесь на плагин gradle 3.0.1, пока Canary 10 не будет выпущен в ближайшее время.

Ответ 10

Моя проблема заключалась в том, что я забыл, что я добавил прокси в gradle.properties в C:\Users\(current user)\.gradle например:

systemProp.http.proxyHost=****
systemProp.http.proxyPort=8850

Ответ 11

У меня возникает эта проблема, когда я обновляю android studio с 3.2 до 3.3 и проверяю все ответы, которые у меня не работали. в конце я включил репозиторий Maven и его работу.

enter image description here

Ответ 12

Для меня я решил эту ошибку, просто добавив эту строку в хранилище

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

Ответ 13

Просто добавьте это

buildscript {
    repositories {
        ...
        google() 
        jcenter()
    }

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

Это работает... Ура!