Токен провайдера был прочитан как ноль - PullRequest
0 голосов
/ 25 июня 2019

У меня есть приложение Dart, которое основано на учебнике по туру героев. Что касается корневого инжектора, он более или менее идентичен. Тем не менее, сборка webdev выдает ошибку, подробно показанную ниже.

Я использую Dart SDK 2.3.2 в Windows 10. Как предложено в в этом посте Я попытался запустить очистку кеша паба. Также попытался удалить всю сгенерированную папку, затем запустить очистку кэша паба, но все равно получить ту же ошибку Обратите внимание, что это то же самое приложение прекрасно работает в контейнере Docker для Linux. Кроме того, как причина или результат этих ошибок я не могу сказать, но main.template.dart не генерируется.

import 'package:angular/angular.dart';
import 'package:http/browser_client.dart';
import 'package:http/http.dart';
import 'package:web_front_end/app_component.template.dart' as ng;
import 'package:angular_router/angular_router.dart';

import 'dart:html';

import 'main.template.dart' as self;

@GenerateInjector([
  ClassProvider(Client, useClass: BrowserClient),
  routerProvidersHash,
])
final InjectorFactory injector = self.injector$Injector;

void main() {
  runApp(ng.AppComponentNgFactory, createInjector: injector);
}

Вот ошибки, сгенерированные при запуске сборки webdev.

[INFO] Building new asset graph completed, took 1.7s
[INFO] Checking for unexpected pre-existing outputs. completed, took 1ms
[INFO] Serving `web` on http://127.0.0.1:8080
[SEVERE]angular:angular on web/main.dart: line 15, column 23 of asset:web_front_end/web/main.dart: Unable to parse @GenerateInjector. A provider's token (ClassProvider ((super) = Provider (deps = Null (null); multi = bool (false); token = Null (null); useClass = Type (BrowserClient); useExisting = Null (null); useFactory = Null (null); useValue = String ('__noValueProvided__')))) was read as "null". This is either invalid configuration or you have analysis errors
   ╷
15 │ final InjectorFactory injector = self.injector$Injector;
   │                       ^^^^^^^^
   ╵
[SEVERE]build_web_compilers:entrypoint on web/main.dart: Unable to find modules for some sources, this is usually the result of either a
bad import, a missing dependency in a package (or possibly a dev_dependency
needs to move to a real dependency), or a build failure (if importing a
generated file).

Please check the following imports:

`import 'main.template.dart' as self;` from web_front_end|web/main.dart at 9:1

[INFO] Running build completed, took 12.7s
[INFO] Caching finalized dependency graph completed, took 314ms
[SEVERE] Failed after 13.0s
...