Конфигурация по требованию не поддерживается текущей версией плагина Android Gradle


311

После обновления до Android Studio 3.1.2 я получаю следующую ошибку:

Конфигурация по требованию не поддерживается текущей версией плагина Android Gradle, поскольку вы используете Gradle версии 4.6 или выше. Предложение: отключите конфигурацию по требованию, установив org.gradle.configureondemand = false в файле gradle.properties или используйте версию Gradle менее 4.6.

Я попытался следовать предложению, но это не решило проблему. Любые идеи? Вся помощь очень ценится, спасибо.

Ответы:


710

Нет необходимости понижать рейтинг!

Отключение настройки по требованию требует двух шагов:

  1. Удалить org.gradle.configureondemandиз gradle.properties.

  2. В Android Studio,
    для Mac перейдите к Preferences> Build, Execution, Deployment> Compilerи снимите флажок Настроить по требованию.
    Для Linux / Windows перейдите к File> Settings> Build, Execution, Deployment> Compilerи снимите флажок Настроить по требованию.

Обратите внимание, есть 2 gradle.propertiesфайла

  1. В вашем проекте gradle.properties
  2. ${HOME}/.gradle/gradle.properties

6
Это сработало, после обновления Android Studio и Gradle. Установка этого org.gradle.configureondemand = false не работает.
Нери

4
Не понимаю, почему Google не отключил эту опцию по умолчанию в AS 3.1.2, поскольку они не поддерживают ее, вместо того, чтобы блокировать всех разработчиков.
carlo.marinangeli

14
Проблема была в глобальных gradle.properties. В Local я попытался переопределить org.gradle.configureondemand = false, но почему-то это не сработало. После редактирования глобальных ~ / .gradle / gradle.properties все работает !!!
Божич Небойша

1
@BozicNebojsa, ваш комментарий заслуживает публикации в качестве ответа. Спасибо.
Азизбекян

2
@ BozicNebojsa правильно, это поведение по умолчанию. Как сказано в документе : Конфигурация применяется в следующем порядке (если параметр настроен в нескольких местах, выигрывает последний ): - gradle.properties в корневом каталоге проекта. - gradle.properties в каталоге GRADLE_USER_HOME. - системные свойства, например, когда задано в командной строке.
Винченцо Петронио

47

В Android Studio просто перейдите в « Файл» -> «Настройки» -> «Сборка, выполнение, развертывание» -> «Компилятор» и нажмите, чтобы снять флажок « Настройка по требованию» , затем нажмите «ОК» и снова синхронизируйте проект с файлами Gradle .


8

Я получаю ту же ошибку после обновления до AS 3.1.2. Вы все еще можете использовать Gradle версии 4.6, но понизить плагин Android gradle до 3.1.1

РЕДАКТИРОВАТЬ: просто сделать недействительным кеш и перезапустить


возможно, вам следует понизить версию Gradle плагина или использовать Gradle по умолчанию из AS
hahnsaja

8
Возможно, Google не должен выпускать сломанные инструменты.
Автономные приложения

2
Привет, вообще не нужно ничего понижать. Пожалуйста, посмотрите здесь

5

Это уже известная ошибка в Android-студии даже в Документации , они упомянули об этой проблеме.

Самый простой способ прямо сейчас - отключить эту функцию, перейдя

  1. Откройте окно настроек, нажав «Файл»> «Настройки» (на Mac, Android Studio> «Настройки»).
  2. На левой панели выберите Построение, Выполнение, Развертывание> Компилятор.
  3. Снимите флажок Настроить по требованию.
  4. Нажмите Применить или ОК.

Проверьте это изображение для предупреждения, которое они предоставили для определенных версий плагина Gradle.

введите описание изображения здесь


5

Другое «решение» - использовать предложение Android Studio. Плагин Android Gradle 3.1.3 и Gradle версии 4.4.

введите описание изображения здесь


1
Мне больше нравится эта опция, потому что она не требует, чтобы другие разработчики меняли свои настройки IDE для построения вашего проекта.
Сэм

5

В Android Studio снимите флажок настроить по требованию :

Выполните следующие шаги:

  1. Для Mac перейдите в «Настройки»> «Сборка, выполнение, развертывание> Компилятор» и снимите флажок «Настройка по требованию».

  2. Для Linux / Windows перейдите в Файл> Настройки> Сборка, Выполнение, Развертывание> Компилятор и снимите галочку с настройки по требованию.

Теперь синхронизируйте ваш проект

Удачного кодирования! :)


4

Ответ @wookupmaker правильный. Но, если это все еще не работает, проблема может быть глобальной gradle.properties.

Даже если бы я попытался переопределить

org.gradle.configureondemand = ложь

в моем местном (специфичном для проекта) gradle.properties, как-то это не сработало.

После редактирования global (~ / .gradle / gradle.properties) все заработало как положено


4

Просто нужно обновить плагин Android Gradle до версии 3.2.0-alpha16.

Обновление плагина Android Gradle 3.2.0-alpha16 вместо 3.1.2


Это выглядит интересно, но есть два недостатка: уже есть доступные бета-версии (другими словами, версию придется менять гораздо чаще), и кто хочет использовать невыпущенную зависимость? Но как только он станет стабильным, он станет лучшим.
kb1000

3

Неправильный кэш и перезапуск / отключение конфигурации по требованию у меня не работали. Единственное решение, которое мне помогло, - снова импортировать проект из git.

[UPD] Нужно изменить "com.android.tools.build:gradle" с 3.1.2 на 3.1.1


2

Все, что мне нужно было сделать в этом случае, это использовать «ядерную функцию» в Android Studio:

Файл -> ТЕРЯЕТСЯ кэша / Restart ... .

Как и во многих других случаях, это помогло заставить синхронизацию Gradle и сборку проекта снова работать. Я использую gradle-4.6-allи Gradle Plugin com.android.tools.build:gradle:3.1.3.


1

Перейдите в File-> Build, Excution, Deployment-> Compiler и снимите флажок Настроить по требованию

введите описание изображения здесь


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.