执行flutter pub run build_runner build时遇injectable_generator缓存错误求助
解决 injectable_generator 缓存构建错误的方案
步骤1:彻底清理构建缓存与生成文件
- 删除
.dart_tool目录:清除Dart存储的所有构建缓存数据 - 删除
build目录:清空build_runner生成的所有旧文件 - 删除
pubspec.lock文件:解除依赖版本锁定,避免版本冲突
步骤2:重新安装并更新依赖
执行以下命令:
flutter pub get flutter pub upgrade --major-versions
步骤3:检查 register_modules.dart 文件
- 验证文件内的依赖注入注解(如
@module、@injectable)是否拼写正确、使用规范 - 排查模块中是否存在循环引用,或被依赖的类未添加
@injectable注解 - 确认被注入类的构造函数参数是否齐全,且参数对应的类已完成注册
步骤4:强制无缓存构建
使用以下命令跳过缓存,强制重新生成所有文件:
flutter pub run build_runner build --delete-conflicting-outputs
步骤5:校验依赖版本兼容性
- 确保
injectable与injectable_generator版本匹配,两者大版本需保持一致(如均为2.x或3.x) - 检查
pubspec.yaml中这两个依赖的版本号,避免跨大版本搭配
内容的提问来源于stack exchange,提问作者Pawan Ghimire
相关产品推荐
相关产品推荐

