Еще предупреждение: Конфигурация "компиляция" устарела и заменена "реализацией",

Я заменил все случаи compile implementation в моем проекте build.gradle, но я все еще получаю это предупреждение:

enter image description here

Я попытался найти "компиляцию" во всем проекте, но совпадения не найдено. Так что может быть причиной?

Ответ 1

Я обновил com.google.gms:google-services от 3.1.1 до 3.2.0 и предупреждение перестало появляться.

buildscript {

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

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

    classpath 'com.google.gms:google-services:3.2.0'
    }
}

Ответ 2

У меня есть одно и то же предупреждение для com.google.gms: google-services.

Решение состоит в том, чтобы обновить classpath com.google.gms: google-services до classpath 'com.google.gms: google-services: 3.2.0' в файле в build.gradle Project:

enter image description here

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

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
        classpath 'com.google.gms:google-services:3.2.0'
    }
}

allprojects {
    repositories {
        jcenter()
        google()
    }
}

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

В Android Studio verion 3.1 зависимости complie word заменены на реализацию

зависимости с предупреждением в андроид студии 3.1

dependencies {
            compile fileTree(dir: 'libs', include: ['*.jar'])
            compile 'com.android.support:appcompat-v7:27.1.0'
            compile 'com.android.support.constraint:constraint-layout:1.0.2'
            testImplementation 'junit:junit:4.12'
            androidTestImplementation 'com.android.support.test:runner:1.0.1'
            androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
    }

Зависимости в норме в андроид студии 3.1

    dependencies {
            implementation fileTree(dir: 'libs', include: ['*.jar'])
            implementation 'com.android.support:appcompat-v7:27.1.0'
            implementation 'com.android.support.constraint:constraint-layout:1.0.2'
            testImplementation 'junit:junit:4.12'
            androidTestImplementation 'com.android.support.test:runner:1.0.1'
            androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'

    }

Gradel генерирует Android Studio 3.1 для нового проекта.

Gradel generate by Android Studio 3.1 for new project.

Посетите https://docs.gradle.org/current/userguide/dependency_management_for_java_projects.html

Для получения дополнительной информации https://docs.gradle.org/current/userguide/declaring_dependencies.html

Ответ 3

Я обновил com.google.gms: google-services с 3.2.0 до 3.2.1, и предупреждение перестало появляться.

 buildscript {

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.1'
        classpath 'com.google.gms:google-services:3.2.1'

    }
}

Ответ 4

Использование последней версии сервиса google gms разрешило это для меня.

На уровне проекта build.gradle:

buildscript {
    ...
    dependencies {
        classpath 'com.google.gms:google-services:3.2.1'
        ...  
    }
}

Ответ 5

Откройте файл build.gradle, расположенный здесь:

enter image description here

Это старый способ написания библиотек зависимостей (для версии с градиентом 2 и ниже):

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile files('libs/volley.jar')
    compile 'com.android.support:support-v4:21.+'
}

Это новый (правый) способ импорта зависимостей для версии 3 градиента:

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    testImplementation 'junit:junit:4.12'
    implementation files('libs/volley.jar')
    implementation 'com.android.support:support-v4:21.+'
}

Ответ 6

Ответить google: https://issuetracker.google.com/issues/74048134

Там будет какая-то зависимость, использующая компиляцию, тщательно проверьте зависимости приложений и транзитивные зависимости.

Ответ 7

https://issuetracker.google.com/issues/72479188 указывает, что плагины иногда могут вводить "компилируемые" зависимости и что инициирует предупреждение. Наверное, просто проще всего запустить эту проблему и подождать, пока они не исправит ее, чтобы указать, какие плагины вызывают проблему.

Ответ 8

Не нужно удалять строку. Как писал Джкревис, обновите com.google.gms: google-services до 3.2.0 и остановите предупреждения.

Ответ 9

В моем случае это связано с библиотекой Realm, после того как я обновил ее до последней версии (5.1.0) Realm, проблема решена!

Вот сценарий рабочего градиента:

buildscript {
repositories {
    jcenter()
    google()
}

dependencies {
    classpath 'com.android.tools.build:gradle:3.1.2'
    classpath "io.realm:realm-gradle-plugin:5.1.0"
    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
    classpath 'com.google.gms:google-services:3.2.1'
  }
}

Ответ 10

Я столкнулся с этой проблемой, не используя com.google.gms:google-services. Решение, решая эту проблему следующим образом:

  1. проверить build.gradle файлы всех проектов и модулей. Или просто глобальное ключевое слово поиска "compile", чтобы найти, где причина этого предупреждения.
  2. если вышеуказанный метод не может решить это предупреждение, используйте команду CLI, ./gradlew assembleDebug -d > gradle.log
    распечатать подробную информацию об отладке в файл с именем gradle.log или любым другим, поскольку информация слишком велика. Затем найдите слово "ПРЕДУПРЕЖДЕНИЕ", чтобы найти позицию в gradle.log, как правило, вы можете найти, какая зависимость или плагин вызывают предупреждение.

Ответ 11

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

Ответ 12

Просто обновление версии google-service не работало для меня.

  • Сначала убедитесь, что все ваши compile зависимостей заменены на implementation.
  • Обновите все зависимости в своем проекте. Потому что, если одна из ваших зависимостей compile ваш проект покажет эту ошибку. Поэтому обновите все версии зависимостей.

Ответ 13

перейдите в файл build.gradle на уровне проекта, вы увидите следующие строки:

dependencies {
    classpath 'com.android.tools.build:gradle:3.1.4'  //place your cursor over here 
    //and hit alt+enter and it will show you the appropriate version to select


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

    classpath 'com.google.gms:google-services:4.0.2' //the same as previously
}

Ответ 14

В моем случае это была старая зависимость, которая использовала компиляцию для транзитивных зависимостей: com.jakewharton.hugo

После удаления его из моей градитуры он скомпилирован.

Ответ 15

Обходной путь для решения этой проблемы состоял в том, что я использовал более старую версию Gradle, которую можно найти здесь:

Я использовал версию gradle -3.0-rc-1-src, но другие могут работать тоже, хотя, вероятно, она не должна быть более новой, чем версия 3.0.

Сначала распакуйте zip файл в любом месте.

Затем перейдите в Файл → Настройки → Сборка, Выполнение, Развертывание → Gradle и измените параметр Использовать локальный дистрибутив Gradle. После этого убедитесь, что Gradle Home-field указывает на каталог .gradle в каталоге, который вы только что распаковали.

Восстановите проект, и все будет в порядке.

Ответ 16

В моем случае, если я удаляю → применять плагин: com.google.gms.google-services '< - эта строка, ошибка предупреждения не отображается, но приложение не может инициировать firebase, поэтому приложение сбойное

Ответ 17

Я попытался изменить службы google gms на последние com.google.gms:google-services:3.2.1 в Android Studio 3.0.1, но предупреждение все еще сохраняется.

Как рекомендовал компилятор, я изменил все зависимости compile на implementation и testCompile на testImplementation как это.

dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:mediarouter-v7:27.1.1'
implementation 'com.android.support:design:27.1.1'
implementation 'com.google.firebase:firebase-ads:12.0.1'
implementation 'com.google.firebase:firebase-crash:12.0.1'
implementation 'com.google.firebase:firebase-core:12.0.1'
implementation 'com.google.firebase:firebase-messaging:12.0.1'
implementation 'com.google.firebase:firebase-perf:12.0.1'
implementation 'com.google.firebase:firebase-appindexing:12.0.1'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
}

И, наконец, предупреждение удалено!

Ответ 18

Вы можете сделать следующие два варианта:

  1. Добавить classpath 'com.google.gms: google-services: 3.2.0' в проекте ur: build.gradle и
  2. Замените свой модуль: build.gradle в зависимости от соответствия с реализацией, и вы не получите никаких предупреждающих сообщений.

Ответ 19

Просто добавьте из build.gradle из build script

classpath 'com.google.gms:google-services:3.2.0'

и все зависимости "compile" заменить на "implementation".

это сработало от меня.

Ответ 20

Текущая версия 4.2.0:

buildscript {

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

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
    classpath 'com.google.gms:google-services:4.2.0'
}

}

Ответ 21

Для меня изменение компиляции на реализацию исправило это

Перед

compile 'androidx.recyclerview:recyclerview:1.0.0'
compile 'androidx.cardview:cardview:1.0.0'
//Retrofit Dependencies
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
После того, как

After

implementation 'androidx.recyclerview:recyclerview:1.0.0'
implementation 'androidx.cardview:cardview:1.0.0'
//Retrofit Dependencies
implementation 'com.squareup.retrofit2:retrofit:2.1.0'
implementation 'com.squareup.retrofit2:converter-gson:2.1.0'

Ответ 22

Надеюсь, что вы пострадали от build.gradle(app). Если это так, выполните следующий шаг

Заменить компиляцию с помощью androidTestImplementation в build.gradle

androidTestImplementation 'com.android.support:appcompat-v7:27.1.1'
androidTestImplementation 'com.android.support:design:27.1.1'

так просто ! надеюсь, это решит

Ответ 23

В моем случае проблема заключалась в плагине градиента сервисов Google со следующей строкой в файле gradle:

применить плагин: 'com.google.gms.google-services'

Удаление этого разрешило проблему

Ответ 24

перейдите к вам build.gradle (уровень приложения)

Приложение build.gradle module

и заменить слово "скомпилировать" словами "реализация",

он будет работать на 100%