Com.android.tools.build:gradle:3.0.0-alpha1 konnte im Kreis ci nicht gefunden werden

157

Ich aktualisiere das Gradle-Plugin auf den neuesten Stand: com.android.tools.build:gradle:3.0.0-alpha1 und dieser Fehler ist aufgetreten:

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:

Aktuelle 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

Bearbeiten: Meine Gradle-Datei:

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
}
Mohamed ALOUANE
quelle

Antworten:

342

Google hat neues Maven Repo

https://android-developers.googleblog.com/2017/10/android-studio-30.html > Abschnitt Googles Maven Repository

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

Fügen Sie also die Abhängigkeit von Maven Repo hinzu:

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.6.3'  //Minimum supported Gradle version is 4.6.
    }
}
mtrakal
quelle
1
Wenn Sie einen Intro-Einschränkungsfehler ausführen, fügen Sie Folgendes hinzu: mavenCentral () jcenter () maven {url ' maven.google.com '}
Mohamed ALOUANE
4
Sie sollten nicht hinzufügen müssen mavenCentral(). Weil jcenter()es genug sein sollte: jfrog.com/knowledge-base/… blog.bintray.com/2015/02/09/…
mtrakal
Ich füge maven {url ' maven.google.com '} hinzu, um das Skript zu gradeln, und erstelle es. Ich erhalte diese Fehlermeldung: Gradle-Synchronisierung fehlgeschlagen: Keine Route zum Host Wie kann ich dieses Problem beheben
Yuchangfu
Versuchen Sie, die Website zu öffnen: maven.google.com im Browser. Sie werden sehen, dass es so aussieht, als hätten sie Fehler / Ausfallzeiten: /
mtrakal
2
@Parker Ich benutze Android Studio 3.0 - Canary Channel . Hier ist der Klassenpfad der obersten Ebene, der build.gradleunverändert com.android.tools.build:gradle:3.0.0-alpha4 kopiert wurde. Bitte beachten Sie, dass es jetzt Alpha4 nach einem Update letzte Woche ist
sud007
99

Damit die Dinge über die Kommandozeile kompiliert werden konnten, musste ich das Maven-Repo in BEIDE buildscriptund aufnehmen 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' }
    }
}

Es wird im buildscriptBlock benötigt , um die AGP zu finden, und im allprojectsBlock, um android.archund com.android.databindingPakete (und andere) zu finden.

UPDATE: Es sieht so aus, als würde das neue Repo gerade aufgerufen, google()aber ich musste es trotzdem an beiden Stellen deklarieren.

tir38
quelle
5
Achten Sie auf das Update: Um es an beiden Stellen zu deklarieren, war die Lösung für mich, Repositories und allprojects
Ultimo_m
maven {url ' maven.google.com '} wenn ich es platziere, funktioniert es für mich
Faisal Ashraf
31

So synchronisieren Sie alle Antworten hier und anderswo:

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

  } }

Lassen Sie Ihr Buildscript in build.gradle so aussehen. Es findet sie alle zwischen Google und JCenter. Nur einer von ihnen findet ab dieser Antwort nicht alle Abhängigkeiten.

GenericJam
quelle
Ich musste dies ebenfalls hinzufügen allprojectsund laufen, android/gradlew --stopbevor ich es erneut versuchte. Dann hat es funktioniert.
Wayferer
2
Ich hatte repositories { jcenter() google() }und es funktionierte nicht ... Umkehren der Reihenfolge, um repositories { google() jcenter() }das Problem zu beheben
ben
15

Die Lösung von mtrakal funktionierte einwandfrei.

Zu gradle.build hinzugefügt:

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()
    }
}

Dann wurde es automatisch auf alpha2 aktualisiert.

Machen Sie die Caches ungültig und starten Sie alles neu.

Datei | Caches ungültig machen / neu starten

Wählen Sie "Ungültig machen und neu starten".

Benachrichtigen
quelle
8

Ich war das:

Klicken Sie auf SDk Manager:

Geben Sie hier die Bildbeschreibung ein

Ändern Sie die Updates für Canary Channel, überprüfen Sie sie und aktualisieren Sie sie ...

Geben Sie hier die Bildbeschreibung ein

Nachdem Sie in build.gradle gegangen sind, ändern Sie die Kompilierungsversion in 26.0.0-beta2:

Geben Sie hier die Bildbeschreibung ein

Nachdem Sie in gradle / build.gradle gegangen sind und den Abhängigkeitsklassenpfad 'com.android.tools.build:gradle:3.0.0-alpha7' geändert haben:

Geben Sie hier die Bildbeschreibung ein

Nach der Synchronisierung des Projekts ... Es funktioniert bei mir! Ich hoffe ich habe geholfen ... tks!

Douglas
quelle
6

Stellen Sie sicher, dass Sie in Ihrem build.gradle der obersten Ebene die folgende Zeile hinzufügen, und das sollte das Problem beheben.

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

Ich habe genau den gleichen Fehler erhalten, den Sie oben erwähnt haben. Nachdem ich diesen Eintrag hinzugefügt habe, hat alles funktioniert.

Subodh Nijsure
quelle
versuchte und bekam dies:> com.android.support.constraint konnte nicht gefunden werden: Constraint-Layout: 1.0.2.
Mohamed ALOUANE
Ich denke, es würde helfen, wenn Sie Ihre App / build.gradle und build.gradle veröffentlichen. Versuchen Sie auch, die Option Datei -> Cache ungültig machen zu verwenden, um Android Studio neu zu starten und zu prüfen, ob die Dinge besser werden.
Subodh Nijsure
2

Update: Unglaublich frustrierend, aber die Google-Weiterleitung des maven.google.comRepos scheint das Laden der Ressourcen zu beeinträchtigen. Wenn Sie stattdessen Ihr Repository auf maven { url 'https://dl.google.com/dl/android/maven2' } die Dateien einstellen, wird dies aufgelöst. Sie können dies beweisen, indem Sie versuchen, die vollständig qualifizierte Ressource bei 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 zu erhalten

Dies liegt daran , dass die Site derzeit gradle:3.0.0-alpha1nur über das neue 'https://maven.google.com'Repository bereitgestellt wird. Die Site befindet sich derzeit an diesem Speicherort. Andernfalls wird als öffentliches Verzeichnis eine Baumliste aller verfügbaren Dateien angezeigt, indem Sie einfach in Ihrem Browser zu diesem Speicherort navigieren . Wenn sie ihren Ausfall beheben, sollte Ihr CI-Build sofort erfolgreich sein.

BrandonJF
quelle
Das Repository [ dl.google.com/dl/android/maven2] ist nicht mehr verfügbar ...
marciowb
2

Für mich habe ich diesen Fehler gelöst, indem ich diese Zeile in das Repository eingefügt habe

maven { url 'https://maven.google.com' }
Manar Odeh
quelle
1

Ich finde dies bei Google: https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration.html

Es wird erwähnt, dass wir müssen

  1. Aktualisieren Sie die Gradle-Version auf gradle-4.1-all (ändern Sie gradle-wrapper.propertiesumdistributionUrl=\https\://services.gradle.org/distributions/gradle-4.1-all.zip
  2. Fügen Sie google () zu Repositorys hinzu repositories { google() }unddependencies { classpath 'com.android.tools.build:gradle:3.0.0-beta7' }

Möglicherweise benötigen Sie Android Studio 3

Alireza Fattahi
quelle
Ich bin kein Downvoter, aber dies behebt das Problem nicht, da dieses Problem auftritt, nachdem Sie tatsächlich zu einem neuen Gradle migriert haben.
Kyrylo Zapylaiev
1

Android Studio (Vorschau) empfiehlt manchmal die Aktualisierung auf ein Gradle-Plugin, das noch nicht verfügbar ist (hat Google vergessen, es zu veröffentlichen?). Wie heute mit

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

Ich habe festgestellt, dass ich hier aktuelle Versionen von com.android.tools.build:gradle sehen kann, und dann wähle ich einfach die neueste aus:

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

Ich habe gerade diesen Beta1-Gradle-Fehler im Android Bug Tracker gefunden . Ich habe auch gerade gelernt, dass Android Studio> Hilfemenü> Feedback senden mich zum Bug-Tracker gebracht hat.

Bei androiddev reddit wurde eine vorübergehende Lösung für das 3.1.0-beta1-Problem gefunden: Entweder kehren Sie zur Vorschau von Canary 8 zurück oder wechseln Sie zum Gradle-Plugin 3.0.1, bis Canary 10 in Kürze veröffentlicht wird.

Arberg
quelle
1

Für Iraner : Wir müssen Proxy oder VPN verwenden , um eine App zu erstellen.

Grund: Der Boykott durch die Server von Google führt dazu, dass Sie keine App erstellen oder Ihre Anforderungen aktualisieren können.

A1Gard
quelle
0

Mein Problem war , dass ich vergessen , dass ich einen Proxy in der Nachspiel gradle.propertiesin C:\Users\(current user)\.gradlewie:

systemProp.http.proxyHost=****
systemProp.http.proxyPort=8850
Mohas
quelle
0

Ich habe dieses Problem, wenn ich Android Studio von 3.2 auf 3.3 aktualisiere und alle Antworten teste, bei denen keiner von ihnen funktioniert hat. Am Ende habe ich das Maven Repository und seine Arbeit aktiviert.

Geben Sie hier die Bildbeschreibung ein

Ein Mo.
quelle
0

Fügen Sie dies einfach hinzu

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

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

Es funktioniert ... Prost !!!

DaveAAA
quelle