Еще предупреждение: Конфигурация "компиляция" устарела и заменена "реализацией",
Я заменил все случаи 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
. Решение, решая эту проблему следующим образом:
- проверить
build.gradle
файлы всех проектов и модулей. Или просто глобальное ключевое слово поиска "compile", чтобы найти, где причина этого предупреждения. - если вышеуказанный метод не может решить это предупреждение, используйте команду 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
Вы можете сделать следующие два варианта:
- Добавить classpath 'com.google.gms: google-services: 3.2.0' в проекте ur: build.gradle и
- Замените свой модуль: 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%