特定项目运行build runner时遇预编译构建脚本失败错误
解决Build Runner无法预编译构建脚本的问题
常见解决步骤:
清理构建缓存
先清除旧缓存和生成文件,避免残留问题:flutter clean rm -rf .dart_tool/build纯Dart项目替换为:
dart clean rm -rf .dart_tool/build检查构建器配置与依赖兼容性
- 打开
pubspec.yaml,确认dev_dependencies中build_runner、相关构建器(如json_serializable、build_web_compilers)的版本无冲突,避免同时依赖版本不兼容的插件。 - 若项目有
build.yaml,检查其中的构建器定义语法,确保缩进正确、键名无误,比如:targets: $default: builders: json_serializable: options: any_map: true
- 打开
重新拉取依赖并运行Build Runner
执行以下命令重置依赖后重试:flutter pub get flutter pub run build_runner build --delete-conflicting-outputs纯Dart项目替换为:
dart pub get dart run build_runner build --delete-conflicting-outputs验证SDK版本兼容性
用flutter --version或dart --version查看本地SDK版本,确保和build_runner等依赖的版本要求匹配。部分新版本构建工具需要Dart 3.0+,若SDK版本过低需升级。排查单个构建器
临时注释pubspec.yaml中部分构建器依赖,逐一运行Build Runner,定位是哪个插件的配置或版本导致问题,再针对性调整。
内容的提问来源于stack exchange,提问作者Iman Yarahmadi
相关产品推荐
相关产品推荐

