aujourd'hui, je viens d'importer un exemple d'application du SDK Android en tant que module dans mon projet (analyse) et j'ai soudainement eu cette erreur de gradle lorsque j'essaye de la synchroniser: Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRIDE envrinment variable to...
Ceci est mon gradle
fichier d' application :
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')
}
Avez-vous une idée de ce qui peut en être la cause (j'utilise le plugin version 1.1.0-rc1 et la gradle
version 2.2 et la Android Studio
version 1.1.0)?
ÉDITER:
C'est mon 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
la source
la source
-rc1
.Réponses:
Tout comme CommonsWare a suggéré, assurez-vous que vous avez Gradle 2.2.1+ (le dernier est 2.3).
Assurez-vous de mettre à jour votre Android Studio, mais voici les "plugins" qui doivent être mis à jour:
Haut
build.gradle
:Changement:
classpath 'com.android.tools.build:gradle:1.1.0-rc1'
À:
classpath 'com.android.tools.build:gradle:1.1.3' // latest 1.5.0
App
build.gradle
:Changement:
compile 'com.android.support:recyclerview-v7:21.0.0' compile 'com.android.support:cardview-v7:21.0.0'
À:
compile 'com.android.support:recyclerview-v7:22.0.0' // latest 23.1.1 compile 'com.android.support:cardview-v7:22.0.0' // latest 23.1.1
Gradle: https://gradle.org/downloads
Vérifiez toujours le gestionnaire de SDK Android pour les dernières révisions:
Plug-in Android Build Tools: http://tools.android.com/tech-docs/new-build-system
Bibliothèques de support Android: http://developer.android.com/tools/support-library/features.html
Pour afficher les dernières versions du plug-in, consultez directement la page Bintray Jcenter: https://bintray.com/android/android-tools/com.android.tools.build.gradle/view .
la source
https://jcenter.bintray.com/com/android/tools/build/gradle/
voir quelle était la dernière version de gradle. La mise à jour de mon fichier de premier niveau avec la dernière version disponible à partir de cette URL a résolu le problème. Votre solution ne m'a pas donné suffisamment d'informations pour trouver cela!Solution (mise à jour: 24 mai 2016): Modifier build.gradle (projet)
buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:X.X.X-lastVersionGradle' classpath 'com.google.gms:google-services:X.X.X-lastVersionGServices' // If use google-services // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files }
XXX-lastVersionGradle : Par exemple: 2.1.0
XXX-lastVersionGServices : Par exemple: 3.0.0 (prend en charge Firebase Analytics)
Remarque: si vous utilisez le plugin google-services doit être la même version (le cas échéant)
la source
En passant, j'obtiens la même erreur dans une situation totalement indépendante - après que le réglage de l'année de mon horloge système a été modifié (c'est-à-dire 2015 -> 2016); le changement de l'horloge à la bonne a résolu le problème.
Note 1: Je poste ceci principalement parce que j'avais exactement le même message d'erreur, mais la solution de travail s'est avérée différente de la simple mise à jour de la version du plugin (telle que publiée par
Jared Burrows
).Remarque 2: utilisation
classpath 'com.android.tools.build:gradle:+'
peut rendre la version du plugin par défaut la plus récente. Gardez à l'esprit que votre build peut être interrompu suite aux modifications de l'API (et est, pour cette raison même, déconseillé par la documentation sur l'API Android), alors utilisez-le à vos risques et périls uniquement si vous mettez à jour constamment la version de toute façon.
la source
+
version IMO. Des avertissements sont émis pour aider à la programmation, s'ils faisaient référence à des règles dures et inflexibles, ils n'auraient pas été des avertissements mais des erreurs en premier lieu. Pourtant, vous avez fait un point tout à fait valable, j'ai inclus cette information dans mon message.Juste au cas où quelqu'un aurait du mal avec ça, dans mon cas, j'utilise Gradle 1.4 beta 1 et je DOIS le garder. Donc, pour faire fonctionner Android Studio, accédez au terminal et exécutez ceci:
launchctl setenv ANDROID_DAILY_OVERRIDE <your-value-on-error-message>
Redémarrez Android Studio et le projet se reconstruira.
Félicitations à UPDATE 2 ici: https://emmanuelbernard.com/blog/2012/05/09/setting-global-variables-intellij/
la source
Vous pouvez toujours vérifier la dernière version du plugin Gradle ici: https://bintray.com/android/android-tools/com.android.tools.build.gradle
Donc, à partir d'aujourd'hui, vous devriez utiliser:
classpath 'com.android.tools.build:gradle:2.2.2'
en conséquence.
la source
Remplacez votre chemin de classe par quelque chose d'ambigu comme celui-ci. C'est une solution et cela fonctionne, mais ce n'est peut-être pas une bonne solution.
classpath 'com.android.tools.build:gradle:+'
Le meilleur moyen est de remplacer le + par la dernière version de gradle
la source
Vérifiez la dernière version de Gradle Plugin ici:
Vous devez changer cela dans les dépendances des paramètres de l'application
buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:[PLACE VERSION CODE HERE]' }
}
la source
Ce problème se produit en raison des modifications de version de Gradle, puisque votre application utilise l'ancienne version de gradle, vous devez mettre à jour vers la nouvelle version.
Ces modifications doivent être effectuées dans le fichier build.gradle, regardez ce lien http://www.feelzdroid.com/2015/11/android-plugin-too-old-update-recent-version.html . pour savoir comment mettre à jour le gradle et les étapes détaillées sont fournies. Là.
Merci
la source
J'utilise la liaison de données Android et j'ai le même problème aujourd'hui.
Pour le résoudre, changez:
classpath "com.android.databinding:dataBinder:1.0-rc0"
À:
classpath "com.android.databinding:dataBinder:1.0-rc1"
1.0-rc0 peut encore être trouvé sur jcenter maintenant, je ne sais pas pourquoi il n'a pas pu être utilisé.
la source
J'ai trouvé un moyen de résoudre finalement ce problème 1. vérifiez votre calsspath dans le top build.gradle, par exemple le mien est classpath 'com.android.tools.build:gradle:2.1.0-alpha3' puis allez à https: // jcenter. bintray.com/com/android/tools/build/gradle/ trouver une version plus récente que la vôtre, ici je choisis 2.1.0-beta3 change classpath en dessous, puis lance la compilation. classpath 'com.android.tools.build:gradle:2.1.0-beta3'
la source
Si vous souhaitez continuer à utiliser les dernières versions de développement, ce problème peut se reproduire chaque fois que votre version est suffisamment obsolète.
J'ai gardé une liste à jour des versions de développement les plus récentes ainsi que la version stable sur ma réponse à cette question similaire, afin que je puisse y remédier chaque fois que je reçois un nouvel avertissement:
Android Studio 2.0 - Le plug-in est trop ancien, veuillez effectuer une mise à jour vers une version plus récente ou définir ANDROID_DAILY_OVERRIDE
la source
définir la variable d'environnement ANDROID_DAILY_OVERRIDE sur la même valeur Exemple - b9471da4f76e0d1a88d41a072922b1e0c257745c
cela fonctionne pour moi.
la source
La solution de supprimer la partie «-rcX» fonctionne. Je voulais fournir plus de détails sur les raisons pour lesquelles l'erreur se produit. Le problème est avec https://android.googlesource.com/platform/tools/base/+/master/build-system/gradle/src/main/groovy/com/android/build/gradle/BasePlugin.java#230
Il existe un «âge de retraite» par défaut de 40 jours pour les plugins qui n'ont pas de version ou qui contiennent «rc», «alpha» ou «beta».
la source
Au cours des derniers mois, j'ai utilisé une version "aperçu" d'Android Studio. J'ai essayé de revenir aux versions "stables" pour les mises à jour logicielles mais ce n'était pas suffisant et j'ai eu cette fameuse erreur dont vous parlez.
La désinstallation de mon Android Studio 2.2.preview et l'installation du dernier Android Studio stable (2.1) l'ont corrigé pour moi :)
la source
Optez pour la version stable ou gradle dans le fichier de niveau de l'application dans mon cas, c'était le chemin de classe
'com.android.tools.build:gradle:2.2.0-alpha3'
Je l'ai changé avec
classpath 'com.android.tools.build:gradle:2.1.2'
la source
la sortie provient de NonFinalPluginExpiry.java
exemple 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
si quelqu'un veut utiliser le plugin et ne veut pas faire un google shi quotidien ..
soit besoin de:
créer un script d'automatisation pour générer env var et le définir quotidiennement
MessageDigest crypt = MessageDigest.getInstance("SHA-1"); crypt.reset(); crypt.update(String.format( "%1$s:%2$s:%3$s", now.getYear(), now.getMonthValue() -1, now.getDayOfMonth()) .getBytes("utf8")); String overrideValue = new BigInteger(1, crypt.digest()).toString(16);
EXEMPLE D'APPLICATION EN JAVA (sources + JAR):
https://github.com/c3ph3us/ado
https://github.com/c3ph3us/ado/releases
exemple de fonction bash pour exporter env et démarrer une idée / ou un studio:
// eval export & start idea :) function sti() { export `java -jar AndroidDailyOverride.jar p` idea.sh }
la source
C'est la manière d'Android de vous dire de mettre à niveau gradle vers la version la plus récente. Vous pouvez faire deux choses-
la source
Vous devez mettre à jour la version de gradle. par exemple: com.android.build.gradle 1.3.0
ce problème se produit lorsque la version du gradle est modifiée.
la source