现有Flutter项目执行dart run build_runner build报错求助
Flutter项目执行
dart run build_runner build失败的解决建议 问题描述
运行现有Flutter项目时出现错误,执行dart run build_runner build命令失败。已尝试flutter clean、重新安装Flutter、迁移至Linux系统、重新安装SDK等操作,问题仍未解决。
项目pubspec.yaml配置
environment: sdk: ">=2.12.0 <3.0.0" dependencies: flutter: sdk: flutter # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. cupertino_icons: ^1.0.2 webview_flutter: ^2.0.9 flutter_inappwebview: ^5.3.2 url_launcher: ^6.0.8 flutter_svg: ^0.22.0 uni_links: ^0.5.1 flutter_webview_plugin: ^0.4.0 flutter_share: ^2.0.0 package_info_plus: ^1.0.6 dio: ^4.0.0 sign_in_with_apple: ^3.0.0 google_sign_in: ^5.1.0 json_serializable: ^4.1.4 build: ^2.1.0 get_it: ^7.2.0 dev_dependencies: flutter_test: sdk: flutter build_runner:
解决步骤
调整依赖分类与版本
- 将
json_serializable和build从dependencies移至dev_dependencies,这两个属于开发阶段依赖,无需打包到生产环境 - 为
build_runner指定与json_serializable兼容的版本,比如build_runner: ^2.1.5(与json_serializable: ^4.1.4版本匹配)
修改后的dev_dependencies部分:
dev_dependencies: flutter_test: sdk: flutter build_runner: ^2.1.5 json_serializable: ^4.1.4 build: ^2.1.0- 将
执行清理与依赖同步命令
- 执行
flutter clean清除旧的构建缓存 - 执行
flutter pub get重新拉取依赖
- 执行
带参数执行build_runner
使用--delete-conflicting-outputs参数解决可能存在的输出文件冲突问题:dart run build_runner build --delete-conflicting-outputs验证SDK版本兼容性
确保当前使用的Flutter SDK对应的Dart版本在>=2.12.0 <3.0.0范围内,避免因SDK版本超出范围导致的依赖不兼容问题。
内容的提问来源于stack exchange,提问作者Consolas
相关产品推荐
相关产品推荐

