Вы используете локальную библиотеку, которая все еще использует 'compile'?
Devsil
@Devsil возможно ... но как я могу узнать какой? Я пытался найти путь во всем проекте, но не смог найти ни одного случая compile..
Роб
2
Если вы используете локальную библиотеку, вы увидите ее файл gradle.build, расположенный в средстве просмотра проекта в правой части окна Android Studio. В этом файле build.gradle он может содержать «компиляцию», а не реализацию. Если какой-либо файл build.gradle, который вы видите там, не содержит этого. Это может быть используемая вами библиотека, которая не является локальной, что не дает вам доступа к ее изменению. Так что это предупреждение пока можно просто игнорировать.
Devsil
1
Gradle должен
указать
попробуйте это: stackoverflow.com/questions/48623244/… и Failed to resolve: android.arch.persistence.room:runtime:1.1.1 Open File Show in Project Structure dialogпопробуйте изменить версию на1.0.0
Saeid
Ответы:
496
Я обновил 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'}}
Конфигурация 'compile' устарела и была заменена на 'реализация'. Он будет удален в конце 2018 года. Чтобы было ясно, я не использую какие-либо зависимости от службы Google {classpath 'com.android.tools.build:gradle:3.1.0'}
Amit_android
Я получаю сообщение "Не удалось найти com.google.gms: google-services: 3.2.0." когда я попробую это. Обновление: изменив вручную предупреждение lint, когда я изменил его обратно на 3.1.1, затем Alt + Enter, чтобы применить исправление, автоматически изменило его на com.google.gms: google-services: 3.2.0 без ошибок при синхронизации. Я не уверен, в чем разница, но это расстраивает.
jwehrle
Хорошо, я верю, что понимаю разницу. Я изменил путь к классам Project и Module build.gradle gms до версии 3.2.0. Это изменение модуля вызвало проблему. Измените только версию Project build.gradle gms classpath.
jwehrle
Мне также не хватало репозитория jcenter ()! Проект был очень старым и не включал репо!
Yani2000
Вы имеете в виду, что я должен просто добавить эту строку вручную в файл?
hellogoodnight
125
У меня есть одно предупреждение для com.google.gms: google-services.
Решение состоит в том, чтобы обновить classpath com.google.gms: google-services до classpath 'com.google.gms: google-services: 3.2.0' в файле в build.gradle Project:
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
Обратите внимание, что «testCompile» меняется на «testImplementation».
AJW
большинство ответов, а также самый популярный, все сосредоточены на com.google.gms: google-services, но все дело в обновлении старого стиля именования в обоих файлах
gradle
32
Я обновил com.google.gms: google-services с 3.2.0 до 3.2.1, и предупреждение перестало появляться.
Спасибо друг! Это похоже на самый актуальный ответ здесь по состоянию на январь 2019 года
NaturalBornCamper
Этот ответ полезен для тех, кто сталкивается с этой проблемой впервые. Хотя у OP есть другой вопрос, который говорит, что даже после этих изменений отображается сообщение об ошибке.
Я удалил ВСЕ зависимости во ВСЕ build.gradles для моего проекта и все еще получаю ошибку
behelit
3
РЕДАКТИРОВАТЬ: Это было вызвано царством, используя более старую версию
behelit
7
https://issuetracker.google.com/issues/72479188 указывает, что плагины иногда могут вводить зависимости «компиляции», и именно это вызывает предупреждение. Вероятно, проще всего отметить эту проблему и подождать, пока они не исправят ее, чтобы указать, какие плагины вызывают проблему.
Заменили ли вы каждое вхождение 'compile' на 'реализация' в build.gradle вашего проекта (Module: App) и обновили com.google.gms: google-services в build.gradle (Project) до версии 3.2.0?
Том
6
Я сталкиваюсь с этой проблемой без использования com.google.gms:google-services. Решение, решающее эту проблему, как показано ниже:
проверить build.gradleфайлы всех проектов и модулей. Или просто глобальный поиск по ключевому слову «compile», чтобы найти причину этого предупреждения.
Если вышеуказанный метод не может устранить это предупреждение, используйте команду CLI,
./gradlew assembleDebug -d > gradle.log
распечатайте подробную информацию об отладке в файл с именем gradle.logили любым другим, так как информация слишком большая. Затем найдите слово «ПРЕДУПРЕЖДЕНИЕ», чтобы найти позицию gradle.log, обычно вы можете найти, какая зависимость или плагин вызывают предупреждение.
Я думаю, что это общее решение. Проблема может быть вызвана одной или несколькими вашими зависимостями
Rasmusob
5
В моем случае это вызвано библиотекой Realm, после того как я обновил ее до последней версии (пока что 5.1.0), проблема решена!
Вот рабочий скрипт gradle:
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'}}
Просто обновление версии google-сервиса у меня не сработало.
Сначала убедитесь, что все ваши зависимости compileзаменены на implementation.
Обновите все зависимости в вашем проекте. Потому что, если одна из ваших зависимостей имеет, compileто ваш проект покажет эту ошибку. Так что обновите все зависимости версии.
перейдите к файлу 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}
Обходной путь для решения этой проблемы был для меня, что я использовал более старую версию Gradle, которую можно найти здесь :
Я использовал версию gradle-3.0-rc-1-src, но другие тоже могут работать, хотя, вероятно, она не должна быть новее версии 3.0.
Сначала распакуйте zip-файл куда угодно.
Затем перейдите в File -> Settings -> Build, Execution, Deployment -> Gradle и измените настройку на Использовать локальное распределение gradle. После этого убедитесь, что поле Gradle Home указывает на каталог .gradle в каталоге, в который вы только что разархивировали.
Я попытался изменить службы gms gms на последнюю com.google.gms:google-services:3.2.1версию в Android Studio 3.0.1, но предупреждение по-прежнему сохраняется.
В соответствии с рекомендациями компилятором, я изменил все compileзависимости , чтобы implementationи testCompileк testImplementationтак ..
Обратите внимание, что если вы используете, classpathвы должны использовать его внутри buildscriptблока; кроме того, нельзя использовать implementationвнутри buildscriptблока.
ChumiestBucket
0
Текущая версия 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'}
compile
..Failed to resolve: android.arch.persistence.room:runtime:1.1.1 Open File Show in Project Structure dialog
попробуйте изменить версию на1.0.0
Ответы:
Я обновил
com.google.gms:google-services
с3.1.1
до3.2.0
и предупреждение перестало появляться.источник
У меня есть одно предупреждение для com.google.gms: google-services.
Решение состоит в том, чтобы обновить classpath com.google.gms: google-services до classpath 'com.google.gms: google-services: 3.2.0' в файле в build.gradle Project:
В Android Studio verion 3.1 зависимости complie word заменены на реализацию
зависимости с предупреждением в андроид студии 3.1
зависимости в норме в андроид студии 3.1
Gradel генерирует Android Studio 3.1 для нового проекта.
Посетите https://docs.gradle.org/current/userguide/dependency_management_for_java_projects.html
Для получения дополнительной информации https://docs.gradle.org/current/userguide/declaring_dependencies.html
источник
Я обновил com.google.gms: google-services с 3.2.0 до 3.2.1, и предупреждение перестало появляться.
источник
classpath 'com.google.gms:google-services:4.1.0'
не самая обновленная, но да, она больше, чем3.2.0
. Нет разрешения до сих пор!Использование последней версии сервисов gms gms решило ее для меня.
На уровне проекта build.gradle:
источник
Откройте файл build.gradle, расположенный здесь:
Это старый способ написания библиотек зависимостей (для Gradle версии 2 и ниже):
Это новый (правильный) способ импорта зависимостей для Gradle версии 3:
источник
Ответ от Google: https://issuetracker.google.com/issues/74048134
Будет некоторая зависимость, все еще использующая компиляцию, тщательно проверьте зависимости приложения и транзитивные зависимости.
источник
https://issuetracker.google.com/issues/72479188 указывает, что плагины иногда могут вводить зависимости «компиляции», и именно это вызывает предупреждение. Вероятно, проще всего отметить эту проблему и подождать, пока они не исправят ее, чтобы указать, какие плагины вызывают проблему.
источник
Не нужно убирать строку. Как пишет Jkrevis, обновите com.google.gms: google-services до версии 3.2.0, и он прекратит предупреждение.
источник
Я сталкиваюсь с этой проблемой без использования
com.google.gms:google-services
. Решение, решающее эту проблему, как показано ниже:build.gradle
файлы всех проектов и модулей. Или просто глобальный поиск по ключевому слову «compile», чтобы найти причину этого предупреждения../gradlew assembleDebug -d > gradle.log
распечатайте подробную информацию об отладке в файл с именем
gradle.log
или любым другим, так как информация слишком большая. Затем найдите слово «ПРЕДУПРЕЖДЕНИЕ», чтобы найти позициюgradle.log
, обычно вы можете найти, какая зависимость или плагин вызывают предупреждение.источник
В моем случае это вызвано библиотекой Realm, после того как я обновил ее до последней версии (пока что 5.1.0), проблема решена!
Вот рабочий скрипт gradle:
источник
Просто обновление версии google-сервиса у меня не сработало.
compile
заменены наimplementation
.compile
то ваш проект покажет эту ошибку. Так что обновите все зависимости версии.источник
перейдите к файлу build.gradle на уровне проекта, вы увидите следующие выделенные строки
источник
В моем случае это была старая зависимость, которая использовала компиляцию для транзитивных зависимостей:
com.jakewharton.hugo
После удаления из моего gradle это скомпилировано.
источник
Обходной путь для решения этой проблемы был для меня, что я использовал более старую версию Gradle, которую можно найти здесь :
Я использовал версию gradle-3.0-rc-1-src, но другие тоже могут работать, хотя, вероятно, она не должна быть новее версии 3.0.
Сначала распакуйте zip-файл куда угодно.
Затем перейдите в File -> Settings -> Build, Execution, Deployment -> Gradle и измените настройку на Использовать локальное распределение gradle. После этого убедитесь, что поле Gradle Home указывает на каталог .gradle в каталоге, в который вы только что разархивировали.
Перестройте проект, и все должно быть в порядке.
источник
Я попытался изменить службы gms gms на последнюю
com.google.gms:google-services:3.2.1
версию в Android Studio 3.0.1, но предупреждение по-прежнему сохраняется.В соответствии с рекомендациями компилятором, я изменил все
compile
зависимости , чтобыimplementation
иtestCompile
кtestImplementation
так ..И, наконец, предупреждение снято!
источник
Вы можете сделать это двумя вариантами:
источник
Просто добавьте
build.gradle
изbuild script
и все зависимости
"compile"
заменить на"implementation"
.это сработало от меня.
источник
classpath
вы должны использовать его внутриbuildscript
блока; кроме того, нельзя использоватьimplementation
внутриbuildscript
блока.Текущая версия 4.2.0 :
buildscript {
}
источник
Для меня изменение компиляции для реализации исправлено
Перед
После
источник
Надеюсь, что вы затронуты с build.gradle (приложение) Если сделать это, выполните этот шаг
Заменить компиляцию с androidTestImplementation в build.gradle
так просто ! надеюсь это решит
источник
В моем случае проблема заключалась в плагине gradle для служб Google со следующей строкой в файле gradle:
Удаление этого решило проблему
источник
перейти к вам build.gradle (уровень приложения)
приложение модуля build.gradle
и заменить слово «компилировать» на «реализация»
это будет работать на 100%
источник