Android项目配置Huawei AGConnect遇Gradle构建错误求助
解决AGCP插件构建错误:com.android.tools.build:gradle is not set in the build.gradle file
问题分析
这个错误是AGCP(华为AppGallery Connect插件)在新版Gradle Plugin DSL环境下的解析逻辑冲突导致的误报——并非真的未配置Android Gradle插件,而是手动设置的插件解析策略干扰了AGCP对Android插件的识别。
解决步骤
移除settings.gradle中多余的AGCP解析配置
删除pluginManagement下resolutionStrategy里针对com.huawei.agconnect的自定义解析规则。项目级build.gradle已通过plugins块声明了插件版本,手动指定useModule会引发冲突。修改后的settings.gradle:
pluginManagement { repositories { google() mavenCentral() gradlePluginPortal() maven { url "https://jitpack.io" } maven {url "https://developer.huawei.com/repo/"} jcenter() } } dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS) repositories { google() mavenCentral() jcenter() maven {url "https://developer.huawei.com/repo/"} } } rootProject.name = "NotificationSample" include ':app' include ':NotifySDK'确认插件应用顺序
确保模块级build.gradle的plugins块中,com.huawei.agconnect在com.android.application之后应用(当前配置已符合要求,无需修改):plugins { id 'com.android.application' id 'org.jetbrains.kotlin.android' id 'com.google.gms.google-services' id 'com.huawei.agconnect' }验证项目级插件声明
保持项目级build.gradle的plugins块配置不变,确保AGCP版本与模块中引用的一致:plugins { id 'com.android.application' version '7.4.2' apply false id 'com.android.library' version '7.4.2' apply false id 'org.jetbrains.kotlin.android' version '1.8.0' apply false id 'com.google.gms.google-services' version '4.3.15' apply false id 'com.huawei.agconnect' version '1.9.1.301' apply false }
原理说明
新版Gradle(7.x+)的Plugin DSL会自动从项目级plugins块声明的版本和仓库中解析插件,手动在settings.gradle中指定useModule会破坏AGCP插件内部的依赖检测逻辑,导致它无法识别已配置的Android Gradle插件,从而抛出错误提示。移除自定义解析规则后,AGCP就能正常识别Android插件并完成初始化。
内容的提问来源于stack exchange,提问作者isandoqa
相关产品推荐
相关产品推荐

