Aqueduct db generate error: Bad state: NoSuchMethodError: The getter 'length' was called on null

这一生的挚爱 提交于 2021-01-22 07:50:08

问题


On the system: Dart VM version: 2.9.0-14.0.dev.flutter-2b917f5b6a (be) (Wed Jun 10 15:46:47 2020 +0000) on "windows_x64"

It is OK when run "aqueduct db generate" to create 00000001_initial.migration.dart But, after edit models and rerun "aqueduct db generate", I get the message as below. After delete 00000001_initial.migration.dart and rerun, it is OK.

The message:

-- Aqueduct CLI Version: 3.3.0+1 -- Aqueduct project version: 3.2.0 *** Uncaught error Bad state: NoSuchMethodError: The getter 'length' was called on null. Receiver: null Tried calling: length **** Stacktrace

  • #0 Object.noSuchMethod (dart:core-patch/object_patch.dart:51:5)
  • #1 _ClassMirror.newInstance (dart:mirrors-patch/mirrors_impl.dart:653:44)
  • #2 Executable.instanceOf (data:application/dart:14:813)
  • #3 SchemaBuilderExecutable.execute (data:application/dart:13:873)
  • #4 main (data:application/dart:9:35)
  • #5 _startIsolate. (dart:isolate-patch/isolate_patch.dart:297:32)
  • #6 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:168:12)

Please help me!


回答1:


It's a bug and it's still there. Happens when there is a previous migration file.

Just erase migrations/00000001_initial.migration.dart and then aqueduct db generate will work as expected.

Tested on Aqueduct 4.0.0-b1

p.s. I know it's the same solution given in the question but I was having the same problem and the solution wasn't clear at first.




回答2:


They actually fixed it

It's just not on pub.dev yet.




回答3:


You can try to downgrade the Dart version.

brew tap dart-lang/dart

brew uninstall dart

brew install dart@2.8

It helped me.

UPDATED:

Here is the content of my pubspec.yaml file:

name: mysecurename
description: mysecuredescription
version: 0.1.0

environment:
  sdk: ">=2.7.0 <3.0.0"

dependencies:
  aqueduct: ^4.0.0-b1
  analyzer: '>=0.32.0 <0.41.0'
  runtime: ^1.0.0-5
  http: ^0.12.0+4
  mime: ^0.9.6+3

dev_dependencies:
  test: ^1.0.0
  aqueduct_test: ^2.0.0-b1


来源:https://stackoverflow.com/questions/62608021/aqueduct-db-generate-error-bad-state-nosuchmethoderror-the-getter-length-wa

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!