ChatGPT解决这个技术问题 Extra ChatGPT

当前版本的 Android Gradle 插件不支持按需配置

升级到 Android Studio 3.1.2 后,我收到以下错误:

当前版本的 Android Gradle 插件不支持按需配置,因为您使用的是 Gradle 版本 4.6 或更高版本。建议:通过在 gradle.properties 文件中设置 org.gradle.configureondemand=false 来禁用按需配置,或者使用低于 4.6 的 Gradle 版本。

我尝试遵循该建议,但这并没有解决问题。有任何想法吗?非常感谢所有帮助,谢谢。


W
Willi Mentzel

无需降级!

禁用按需配置需要两个步骤:

从 gradle.properties 中删除 org.gradle.configureondemand。在 Android Studio 中,对于 Mac 转到 Preferences > Build, Execution, Deployment > Compiler 并取消选中按需配置。对于 Linux/Windows,转到文件 > 设置 > 构建、执行、部署 > 编译器并取消选中按需配置。

注意,有 2 个 gradle.properties 文件

在你的项目 gradle.properties ${HOME}/.gradle/gradle.properties


在升级 android studio 和 gradle 之后,这已经奏效了。设置此 org.gradle.configureondemand=false 不起作用。
不明白为什么 Google 没有在 AS 3.1.2 中默认禁用该选项,因为他们不支持它,而不是阻止所有开发人员。
问题是全局 gradle.properties。在本地,我试图覆盖 org.gradle.configureondemand=false 但不知何故它不起作用。编辑全局 ~/.gradle/gradle.properties 后,它可以工作了!!!
@BozicNebojsa,您的评论值得作为答案发布。谢谢。
@BozicNebojsa 是的,这是默认行为。正如 doc 所说:配置按以下顺序应用(如果在多个位置配置了一个选项最后一个获胜): - 项目根目录中的 gradle.properties。 - GRADLE_USER_HOME 目录中的 gradle.properties。 - 系统属性,例如在命令行上设置的时间。
S
Sidonai

在 Android Studio 中,只需转到文件 -> 设置 -> 构建、执行、部署 -> 编译器并单击以取消选中按需配置选项,然后单击确定并再次将项目与 gradle 文件同步。


H
Hanhan

更新到 AS 3.1.2 后出现同样的错误。您仍然可以使用 Gradle 4.6 版,但将 Android gradle 插件降级到 3.1.1

编辑:只是使缓存无效并重新启动


也许您应该降级插件 gradle 版本或使用 AS 的 gradle 默认值
也许谷歌不应该发布损坏的工具。
嗨,根本不需要降级任何东西。请看一下here
T
TapanHP

即使在 Documentation 中,Android 工作室中的已知 bug,他们也提到了这个问题。

现在最简单的方法是通过以下方式禁用此功能

通过单击文件 > 设置(在 Mac 上,Android Studio > 首选项)打开首选项窗口。在左侧窗格中,单击构建、执行、部署 > 编译器。取消选中按需配置复选框。单击应用或确定。

检查此图像以了解他们为特定 Gradle 插件版本提供的警告。

https://i.stack.imgur.com/KiClR.png


A
Alex Felipe

其他“解决方案”是使用 Android Studio 的建议。插件 Android Gradle 3.1.3 和 Gradle 版本 4.4。

https://i.stack.imgur.com/6cAht.png


我更喜欢这个选项,因为它不需要其他开发人员更改他们的 IDE 设置来构建您的项目。
M
Monir Zzaman

从 Android Studio 取消选中按需配置:

请按照以下步骤操作:

对于 Mac,转到 Preferences > Build, Execution, Deployment > Compiler 并取消选中按需配置。对于 Linux/Windows,转到文件 > 设置 > 构建、执行、部署 > 编译器并取消选中按需配置。

现在同步您的项目

快乐编码! :)


B
Bozic Nebojsa

@wookupmaker 的答案是正确的。但是,如果它仍然不起作用,问题可能是全局 gradle.properties。

即使我试图覆盖

org.gradle.configureondemand=false

在我的本地(项目特定)gradle.properties 中,不知何故它不起作用。

编辑全局(~/.gradle/gradle.properties)后,它按预期工作


C
Chetan Patel

只需要将 Android Gradle 插件更新到 3.2.0-alpha16。

Android Gradle 插件更新 3.2.0-alpha16 而不是 3.1.2


这看起来很有趣,但有两个缺点:已经有可用的 beta 版本(换句话说,版本必须更频繁地更改)以及谁想要使用未发布的依赖项?但是一旦稳定了,这是最好的。
w
whitipet

使缓存无效和重新启动/禁用按需配置对我不起作用。唯一对我有帮助的解决方案是再次从 git 导入项目。

[UPD] 需要将“com.android.tools.build:gradle”从 3.1.2 更改为 3.1.1


M
Micer

在这种情况下,我需要做的就是在 Android Studio 中使用“核函数”:

文件 -> 使缓存无效/重新启动....

与许多其他情况一样,这有助于使 Gradle 同步和项目构建再次工作。我正在使用 gradle-4.6-all 和 Gradle 插件 com.android.tools.build:gradle:3.1.3


e
eli

转到文件->构建、执行、部署->编译器并取消选中按需配置

https://i.stack.imgur.com/LUseR.png


B
Braian Coronel

gradle/wrapper/gradle-wrapper.properties

更新 gradle 版本

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

构建 > 重建项目

祝你好运

Source