Gradle - Erreur: impossible de trouver la méthode de la mise en œuvre() pour les arguments [com.Android.support: appcompat-v7: 26.0.0]

j'essaie d'ouvrir le projet android existant dans android studio et il gradle ne peut pas construire l'application sans l'erreur

erreur android studio continue à lancer

Error:(74, 1) A problem occurred evaluating project ':app'.
> Could not find method implementation() for arguments 
[com.android.support:appcompat-v7:26.0.0] on object of type 
org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.

mon Code dans build.Grad qui peut aider à comprendre mon problème Mes dépendances

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')

// google & support
implementation "com.android.support:appcompat-v7:$supportVersion"
implementation "com.android.support:cardview-v7:$supportVersion"
implementation "com.android.support:recyclerview-v7:$supportVersion"
implementation "com.android.support:design:$supportVersion"
implementation "com.android.support:palette-v7:$supportVersion"
implementation "com.android.support:customtabs:$supportVersion"
implementation "com.android.support:support-v4:$supportVersion"
implementation 'com.google.android.exoplayer:exoplayer:r2.0.4'

// utils
implementation 'com.github.bumptech.glide:glide:4.0.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.0.0'
implementation 'com.koushikdutta.ion:ion:2.1.7'
implementation 'com.github.Commit451:bypasses:1.0.4'
implementation 'com.jakewharton:butterknife:8.8.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.0'
implementation 'com.drewnoakes:metadata-extractor:2.9.1'
implementation "com.orhanobut:hawk:2.0.1"

}

s'il vous Plaît aider à résoudre le problème

31
demandé sur cole 2017-08-10 16:42:29

6 réponses

Remplacer compileimplementation.

compile a été récemment deprecated et remplacé par implementation ou api

66
répondu Saurabh Thorat 2018-07-11 19:59:56

Vous devez utiliser au moins Gradle 3.4 ou plus récent pour pouvoir utiliser implementation. Il n'est pas recommandé de continuer à utiliser le obsolète compile car cela peut ralentir le temps de construire. Pour plus de détails, voir le fonctionnaire android developer guide:

lorsque votre module configure une dépendance d'implémentation, C'est faire savoir à Gradle que le module ne veut pas transmettre la dépendance à d'autres modules au moment de la compilation. Qui est, la dépendance est disponible vers les autres modules uniquement à l'exécution. L'utilisation de cette configuration de dépendance au lieu de l'api ou de la compilation peut entraîner des améliorations significatives du temps de compilation car elle réduit le nombre de projets que le système de compilation doit recompiler. Par exemple, si une dépendance d'implémentation change son API, Gradle ne recompile que cette dépendance et les modules qui en dépendent directement. La plupart des modules d'application et de test devraient utiliser ce configuration.

https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration.html#new_configurations

mise à Jour:compile seront supprimés d'ici la fin de 2018, alors assurez-vous que vous utilisez uniquement implementation maintenant:

Avertissement: la Configuration "Compiler" est obsolète et a été remplacée par "mise en œuvre". Il sera supprimé fin 2018

16
répondu donfuxx 2018-06-02 19:16:18

assurez-vous de votre Grad version 3.. ou plus avant d'utiliser "implementation".

ouvrir le fichier gradle au niveau du projet sous dépendances

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

ouvrir gradle wrapper-propriétés de l'utilisation de la distribution de l'url

distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip

ou la dernière version

synk projet, Espère que cela a résolu votre problème

8
répondu krishna murthy 2018-06-20 06:25:20

modifier appliquer le plugin: 'java' pour appliquer le plugin: "java-bibliothèque'

java-bibliothèque-plugin

3
répondu xiqing lau 2018-06-12 09:29:17

Votre Code

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')

remplacez par

dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
0
répondu Saurabh kumar 2018-07-02 05:52:35

vous pouvez corriger cela automatiquement en allant à:

  1. Fichier -> Paramètres -> Construire, L'Exécution, Le Déploiement -> Compilateur
  2. Cochez cette option Sync project with Gradle before building, if needed
  3. Cliquez Sur Ok
  4. Cliquez sur "Try Again" dans sychronizing gradle avec le projet

vous trouverez un nouveau message posté dans la boîte de messages du côté droit de la boîte de construction qui dit quelque chose comme:

failed to find Build Tools revision 23.0.2
Install Build Tools 23.0.2 and sync project
  1. cliquez sur la solution suggérée, qui est dans cet exemple,Install Build Tools 23.0.2 and sync project

et tout ce qui va être renseignées AUTOMATIQUEMENT pour vous

-1
répondu GaijinForce 2018-08-16 19:49:17