ObjectBox Generator: Error: No named parameter with the name 'lazy'

ObjectBox Generator: Error: No named parameter with the name 'lazy'

我使用此方法将我的 ObjectBox Store 注册为 LazySingleton

setupLocatorAdditions() async {
  stackedAdditionLocator.registerLazySingletonAsync<Store>(() => openStore());
}

效果很好。但是在从 BuildRunner 多次重建之后,ObjectBox Generator 抛出了这个错误,不管我是否删除了单例注册并重新运行它。

lib/objectbox.g.dart:1341:67: Error: No named parameter with the name 'lazy'.
              weekDays: const fb.ListReader<int>(fb.Int8Reader(), lazy: false)
                                                                  ^^^^
../../Flutter/flutter/.pub-cache/hosted/pub.dartlang.org/objectbox-1.1.1/lib/flatbuffers/flat_buffers.dart:994:9: Context: Found this candidate, but the arguments don't match.
  const ListReader(this._elementReader);
        ^^^^^^^^^^

lib/objectbox.g.dart:1343:68: Error: No named parameter with the name 'lazy'.
              locations: const fb.ListReader<int>(fb.Int8Reader(), lazy: false)
                                                                   ^^^^
../../Flutter/flutter/.pub-cache/hosted/pub.dartlang.org/objectbox-1.1.1/lib/flatbuffers/flat_buffers.dart:994:9: Context: Found this candidate, but the arguments don't match.

  const ListReader(this._elementReader);
        ^^^^^^^^^^
2

FAILURE: Build failed with an exception.

该参数不是已发布的 objectbox-dart v1.1.1 的一部分(它是 this commit 13 天前添加的,而 v1.1.1 是 19 天前发布的)。

您似乎使用了不匹配的生成器?如果你在 objectbox_generator 上使用依赖覆盖,你可以检查你的 pubspec.yaml,例如来自 git?如果您正在使用依赖覆盖,您应该坚持特定的提交,并确保您在生成器和对象框库本身上都使用它。如果您不需要依赖覆盖,只需将其从 pubspec.yaml.

中删除

在这两种情况下,运行 pub get 进行更改后 pub run build_runner build