You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter默认新项目Android编译报错:settings.gradle仓库配置冲突

解决Flutter Android构建报错:仓库优先级冲突问题

问题分析

报错核心是Gradle仓库优先级配置冲突:Build被设置为优先使用settings层级的仓库,但解析dev.flutter.flutter-plugin-loader插件时,settings.gradle中的仓库配置触发了规则冲突,加上国内网络环境下的镜像配置,导致插件无法正常拉取。桌面和Web端不受影响是因为它们的构建流程不依赖Android Gradle插件体系。

解决方案

方案1:调整settings.gradle的仓库配置(优先推荐)

修改项目下android/settings.gradle文件的pluginManagement仓库块,将清华镜像仓库前置,确保Gradle优先从国内镜像拉取资源,同时兼容Gradle 8.x的规则:

pluginManagement {
    def flutterSdkPath = {
        def properties = new Properties()
        file("local.properties").withInputStream { properties.load(it) }
        def flutterSdkPath = properties.getProperty("flutter.sdk")
        assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
        return flutterSdkPath
    }()

    includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")

    repositories {
        // 添加清华镜像仓库,前置优先
        maven { url 'https://mirrors.tuna.tsinghua.edu.cn/gradle-plugin-portal/' }
        maven { url 'https://mirrors.tuna.tsinghua.edu.cn/maven2/' }
        maven { url 'https://mirrors.tuna.tsinghua.edu.cn/google' }
        // 保留原仓库配置
        gradlePluginPortal()
        google()
        mavenCentral()
    }
}

plugins {
    id "dev.flutter.flutter-plugin-loader" version "1.0.0"
    id "com.android.application" version "8.1.0" apply false
    id "org.jetbrains.kotlin.android" version "1.8.22" apply false
}

include ":app"

方案2:清除Gradle缓存并重新构建

如果方案1无效,尝试清理缓存重置构建状态:

  • 执行命令:flutter clean
  • 删除项目目录下的android/.gradle文件夹
  • 执行flutter pub get拉取依赖
  • 重新运行flutter run或flutter build apk

方案3:检查local.properties配置

确认android/local.properties中的flutter.sdk路径正确,路径中不要包含空格或中文特殊字符,示例:

flutter.sdk=C:\\flutter

验证

修改完成后,重新启动Android模拟器或执行构建命令,若报错消失则说明问题解决。

内容的提问来源于stack exchange,提问作者Limmy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 15:56:02