Heute habe ich gerade eine Beispiel-App aus dem Android SDK als Modul in mein Projekt (Analytics) importiert und plötzlich habe ich diesen Gradle-Fehler erhalten, als ich versuche, sie zu synchronisieren: Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRIDE envrinment variable to...
Dies ist meine App- gradle
Datei:
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "22.0.0"
defaultConfig {
applicationId "xxx.xxxxxx.xxxxx"
versionCode 1
versionName '1'
minSdkVersion 9
targetSdkVersion 22
versionCode 1
versionName '1'
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.0.0'
compile 'com.google.android.gms:play-services:6.5.87'
compile 'com.android.support:recyclerview-v7:21.0.0'
compile 'com.android.support:cardview-v7:21.0.0'
compile 'com.facebook.android:facebook-android-sdk:3.21.1'
testCompile 'junit:junit:4.12'
compile project(':volley')
}
Haben Sie eine Vorstellung davon, was die Ursache sein könnte (ich verwende das Plugin Version 1.1.0-rc1 und die gradle
Version 2.2 und Android Studio
Version 1.1.0)?
BEARBEITEN:
Das ist mein Top build.gradle
:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.1.0-rc1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
android
android-studio
gradle
android-gradle-plugin
Mario Norato
quelle
quelle
-rc1
.Antworten:
Stellen Sie wie von CommonsWare vorgeschlagen sicher, dass Sie Gradle 2.2.1+ haben (das neueste ist 2.3).
Stellen Sie sicher, dass Sie Ihr Android Studio aktualisieren. Hier sind jedoch die "Plugins", die aktualisiert werden müssen:
Oben
build.gradle
:Veränderung:
Zu:
App
build.gradle
:Veränderung:
Zu:
Gradle: https://gradle.org/downloads
Überprüfen Sie immer den Android SDK Manager auf die neuesten Versionen:
Plugin für Android Build Tools: http://tools.android.com/tech-docs/new-build-system
Android-Unterstützungsbibliotheken: http://developer.android.com/tools/support-library/features.html
Um die neuesten Plugin-Versionen anzuzeigen, rufen Sie die Bintray Jcenter-Seite direkt auf: https://bintray.com/android/android-tools/com.android.tools.build.gradle/view .
quelle
https://jcenter.bintray.com/com/android/tools/build/gradle/
um herauszufinden, was die neueste Version von Gradle war. Das Aktualisieren meiner Top-Gradle-Datei mit der neuesten verfügbaren Version von dieser URL hat das Problem behoben. Ihre Lösung hat mir nicht genügend Informationen gegeben, um dies zu finden!Lösung (Aktualisiert: 24. Mai 2016): Ändern Sie build.gradle (Projekt)
XXX-lastVersionGradle : Zum Beispiel: 2.1.0
XXX-lastVersionGServices : Zum Beispiel: 3.0.0 (unterstützt Firebase Analytics)
Hinweis: Wenn Sie das Google Services-Plugin verwenden, muss es dieselbe Version haben (falls vorhanden).
quelle
Als Randnotiz habe ich den gleichen Fehler in einer völlig unabhängigen Situation erhalten - nachdem meine Einstellung für das Systemuhrjahr geändert wurde (dh 2015 -> 2016); Das Zurücksetzen der Uhr auf die richtige löste das Problem.
Hinweis 1: Ich poste dies hauptsächlich, weil ich genau die gleiche Fehlermeldung hatte, aber die funktionierende Lösung erwies sich als anders als nur das Aktualisieren der Plugin-Version (wie von gepostet
Jared Burrows
).Anmerkung 2: Verwenden
kann die Plugin-Version auf die neueste Version setzen. Beachten Sie, dass Ihr Build bei API-Änderungen möglicherweise nicht funktioniert (und aus diesem Grund von Android-API-Dokumenten nicht empfohlen wird). Verwenden Sie dies daher nur auf eigenes Risiko, wenn Sie die Version trotzdem ständig aktualisieren.
quelle
+
Version IMO. Warnungen werden ausgegeben, um die Programmierung zu erleichtern. Wenn sie sich auf harte, nicht biegbare Regeln beziehen, wären sie in erster Linie keine Warnungen, sondern Fehler gewesen. Trotzdem haben Sie einen völlig gültigen Punkt gemacht, ich habe diese Informationen in meinen Beitrag aufgenommen.Nur für den Fall, dass jemand damit zu kämpfen hat, verwende ich in meinem Fall Gradle 1.4 Beta 1 und muss es behalten. Damit Android Studio funktioniert, gehen Sie zum Terminal und führen Sie Folgendes aus:
launchctl setenv ANDROID_DAILY_OVERRIDE <your-value-on-error-message>
Starten Sie Android Studio neu und das Projekt wird erneut erstellt.
Ein großes Lob an UPDATE 2 hier: https://emmanuelbernard.com/blog/2012/05/09/setting-global-variables-intellij/
quelle
Sie können jederzeit die neueste Version des Gradle-Plugins hier überprüfen: https://bintray.com/android/android-tools/com.android.tools.build.gradle
Ab heute sollten Sie also Folgendes verwenden:
classpath 'com.android.tools.build:gradle:2.2.2'
entsprechend.
quelle
Ersetzen Sie Ihren Klassenpfad durch etwas mehrdeutiges. Es ist eine Lösung und es funktioniert, aber es ist möglicherweise keine gute Lösung.
Klassenpfad 'com.android.tools.build:gradle:+'
Der beste Weg ist, das + durch die neueste Version von gradle zu ersetzen
quelle
Überprüfen Sie die neueste Version des Gradle Plugins hier:
Sie sollten dies in Abhängigkeit von den App-Einstellungen ändern
}}
quelle
Dieses Problem tritt aufgrund der Änderungen der Gradle-Version auf. Da Ihre Anwendung die alte Version von Gradle verwendet, müssen Sie auf die neue Version aktualisieren.
Diese Änderungen müssen in der Datei build.gradle vorgenommen werden. Schauen Sie sich diesen Link an: http://www.feelzdroid.com/2015/11/android-plugin-too-old-update-recent-version.html . Um zu wissen, wie der Gradle aktualisiert wird, werden detaillierte Schritte bereitgestellt. Dort.
Dann
quelle
Ich verwende Android Data Binding und habe heute das gleiche Problem.
Um es zu lösen, ändern Sie:
Zu:
1.0-rc0 konnte jetzt noch auf jcenter gefunden werden , ich weiß nicht, warum es nicht verwendet werden konnte.
quelle
Ich habe einen Weg gefunden, der dieses Problem endgültig löst. 1. Überprüfen Sie Ihren Calsspath im oberen build.gradle, z. B. meinen ist der Klassenpfad 'com.android.tools.build:gradle:2.1.0-alpha3' und gehen Sie dann zu https: // jcenter. bintray.com/com/android/tools/build/gradle/ finde eine Version, die neuer als deine ist. Hier wähle ich 2.1.0-beta3, ändere den Klassenpfad nach unten und starte dann den Build. Klassenpfad 'com.android.tools.build:gradle:2.1.0-beta3'
quelle
Wenn Sie weiterhin die neuesten Entwicklungsversionen verwenden möchten, kann dieses Problem jedes Mal erneut auftreten, wenn Ihre Version weit genug veraltet ist.
Ich habe in meiner Antwort auf diese ähnliche Frage eine aktuelle Liste der aktuellsten Entwicklungsversionen sowie der stabilen Version geführt, damit ich sie jedes Mal beheben kann, wenn ich eine neue Warnung erhalte:
Android Studio 2.0 - Plugin ist zu alt. Bitte aktualisieren Sie auf eine neuere Version oder setzen Sie ANDROID_DAILY_OVERRIDE
quelle
Setzen Sie die Umgebungsvariable ANDROID_DAILY_OVERRIDE auf denselben Wert. Beispiel - b9471da4f76e0d1a88d41a072922b1e0c257745c
das funktioniert bei mir.
quelle
Die Lösung zum Entfernen des Teils '-rcX' funktioniert. Ich wollte näher erläutern, warum der Fehler auftritt. Das Problem liegt bei https://android.googlesource.com/platform/tools/base/+/master/build-system/gradle/src/main/groovy/com/android/build/gradle/BasePlugin.java#230
Für Plugins, die keine Version haben oder 'rc', 'alpha' oder 'beta' enthalten, gibt es ein Standard-Rentenalter von 40 Tagen.
quelle
In den letzten Monaten habe ich eine "Vorschau" -Version von Android Studio verwendet. Ich habe versucht, für die Software-Updates wieder zu den "stabilen" Versionen zu wechseln, aber es hat nicht gereicht, und ich habe diesen berühmten Fehler erhalten, von dem Sie sprechen.
Das Deinstallieren meines Android Studio 2.2.preview und das Installieren des neuesten stabilen Android Studio (2.1) haben es für mich behoben :)
quelle
Wählen Sie in meinem Fall eine stabile Version oder einen Gradle in einer Gradle-Datei auf App-Ebene
Klassenpfad 'com.android.tools.build:gradle:2.2.0-alpha3'.
Ich habe es mit geändert
Klassenpfad 'com.android.tools.build:gradle:2.1.2'
quelle
Die Ausgabe erfolgt von NonFinalPluginExpiry.java
Beispiel 2.4.0-alpha7
https://github.com/c3ph3us/android-gradle-plugin-source-codes/blob/master/gradle-2.4.0-alpha7-sources/com/android/build/gradle/internal/NonFinalPluginExpiry.java
Wenn jemand Plugin verwenden möchte und nicht täglich Google Shi machen möchte.
entweder müssen:
Erstellen Sie ein Automatisierungsskript, um env var zu generieren, und legen Sie es täglich fest
BEISPIEL APP IN JAVA (Quellen + JAR):
https://github.com/c3ph3us/ado
https://github.com/c3ph3us/ado/releases
Beispiel Bash-Funktion zum Exportieren von env und Starten von Idee / oder Studio:
quelle
Dies ist die Art und Weise, wie Android Ihnen sagt, dass Sie gradle auf die neueste Version aktualisieren sollen. Sie können zwei Dinge tun:
quelle
Sie sollten die Version von gradle aktualisieren. Zum Beispiel: com.android.build.gradle 1.3.0
Dieses Problem tritt auf, wenn die Version des Gradles geändert wird.
quelle