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

新建Flutter应用构建报错:build script中subprojects已被使用

解决Gradle报错“subprojects has already been used in this build script”的思路
  • 定位重复定义:打开项目根目录的build.gradle文件,全局搜索subprojects,确认是否存在多个subprojects闭包定义——Gradle不允许在同一个构建脚本里重复声明这个闭包。
  • 合并重复配置:如果找到多个subprojects,把它们内部的配置代码合并到同一个闭包中。示例:
    原重复代码:
    subprojects {
        repositories {
            google()
            mavenCentral()
        }
    }
    
    subprojects {
        tasks.withType(JavaCompile) {
            options.encoding = 'UTF-8'
        }
    }
    
    合并后:
    subprojects {
        repositories {
            google()
            mavenCentral()
        }
    
        tasks.withType(JavaCompile) {
            options.encoding = 'UTF-8'
        }
    }
    
  • 排查依赖注入冲突:如果是新增依赖后出现的问题,暂时注释掉最近添加的Flutter插件或第三方依赖,重新构建排查冲突源,找到后要么替换依赖,要么调整依赖的配置逻辑。
  • 清理缓存重试:执行flutter clean命令,删除android/.gradle目录,再运行flutter run重新构建。
  • 版本兼容性检查:如果是新建项目就报错,尝试升级Flutter到稳定版,或者调整根目录build.gradle中Gradle插件版本(比如将classpath 'com.android.tools.build:gradle:x.x.x'改为Flutter官方推荐的对应版本)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 04:04:55