升级Flutter 2.5.0后出现':cloud_firestore:extractDebugAnnotations'执行失败问题
问题原因
该报错由Android Gradle Plugin(AGP) 7.0.0版本的依赖匹配缺陷导致:该版本AGP在处理cloud_firestore插件的lint依赖时,会错误请求谷歌maven仓库中不存在的com.android.tools.external.com-intellij:kotlin-compiler:30.0.0安装包,因此出现拉取失败的报错。
可行解决方案
以下方案任选其一即可解决问题:
方案1:调整仓库拉取优先级(无需修改版本,操作最简单)
修改android/build.gradle文件中allprojects的repositories配置,将mavenCentral放在google()之前,优先从mavenCentral拉取存在的目标依赖包:allprojects { repositories { mavenCentral() // 新增该行,放在google()前面 google() jcenter() } }方案2:降低AGP版本到兼容稳定版
将android/build.gradle中AGP版本从7.0.0降到4.2.2:dependencies { // 修改该行 classpath 'com.android.tools.build:gradle:4.2.2' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath 'com.google.gms:google-services:4.3.10' }同步修改
android/gradle/wrapper/gradle-wrapper.properties中的Gradle版本为适配4.2.2的版本:distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-bin.zip方案3:临时禁用lint检查(适合赶开发进度时快速解决)
在android/build.gradle的subprojects块中添加禁用lint的配置:subprojects { project.buildDir = "${rootProject.buildDir}/${project.name}" project.evaluationDependsOn(':app') // 新增以下配置 tasks.withType(Lint) { enabled = false } }
生效步骤
修改配置后依次执行以下命令重建项目即可:
- 执行
flutter clean清理本地构建缓存 - 执行
flutter pub get重新拉取项目依赖 - 重新运行项目即可正常编译
内容的提问来源于stack exchange,提问作者Amir
相关产品推荐
相关产品推荐

