问题:
fair自带的demo,执行flutter pub run build_runner build --delete-conflicting-outputs之后无法生成js文件
版本
Fair最新版
删掉了bestUI部分的代码,其他没变
生成文件截图

日志
% flutter pub run build_runner build --delete-conflicting-outputs
[INFO] Generating build script...
[INFO] Generating build script completed, took 408ms
[INFO] Precompiling build script......
[INFO] Precompiling build script... completed, took 6.1s
[INFO] There was output on stdout while precompiling the build script; run with --verbose to see it (you will need to run a clean first to re-generate it).
[INFO] Initializing inputs
[INFO] Building new asset graph...
[INFO] Building new asset graph completed, took 779ms
[INFO] Checking for unexpected pre-existing outputs....
[INFO] Deleting 1 declared outputs which already existed on disk.
[INFO] Checking for unexpected pre-existing outputs. completed, took 3ms
[INFO] Running build...
[INFO] Generating SDK summary...
[INFO] 3.0s elapsed, 0/13 actions completed.
[INFO] Generating SDK summary completed, took 2.9s
[INFO] 4.0s elapsed, 0/13 actions completed.
[INFO] 5.0s elapsed, 0/13 actions completed.
[INFO] 6.0s elapsed, 0/13 actions completed.
[INFO] 7.1s elapsed, 0/13 actions completed.
[INFO] 15.2s elapsed, 0/13 actions completed.
[WARNING] No actions completed for 15.2s, waiting on:
fair_compiler:fairc on lib/json_file_explain.dart
fair_compiler:fairc on lib/fair_widget/fair_props_widget.dart
fair_compiler:fairc on lib/fair_widget/plugin/fair_basic_plugin.dart
fair_compiler:fairc on lib/fair_widget/fair_delegate_widget.dart
fair_compiler:fairc on lib/fair_widget/delegate/test_fair_delegate.dart
.. and 8 more
[WARNING] fair_compiler:fairc on lib/fair_widget/fair_delegate_widget.dart:
[Fair] Compile lib/fair_widget/fair_delegate_widget.dart into bundle...
[WARNING] fair_compiler:fairc on lib/json_file_explain.dart:
[Fair] Compile lib/json_file_explain.dart into bundle...
[WARNING] fair_compiler:fairc on lib/fair_widget/fairbinding/fair_binding_sample.dart:
[Fair] Compile lib/fair_widget/fairbinding/fair_binding_sample.dart into bundle...
不支持的节点NamedTypeImpl<---->extends StatefulWidget---->StatefulWidget
不支持的节点NamedTypeImpl<---->@OverRide State createState() => _FairDelegateWidgetState();---->State
不支持的节点NamedTypeImpl<---->extends State---->State
不支持的节点NamedTypeImpl<---->BuildContext context---->BuildContext
不支持的节点NamedTypeImpl<---->@OverRide Widget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text("fair delegate的使用")), body: ListView.builder(itemBuilder: _itemBuilder, itemCount: 10));}---->Widget
不支持的节点NamedTypeImpl<---->List getData() {return ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10'];}---->List
不支持的节点NamedTypeImpl<---->Widget _itemBuilder(context, index) {return Container();}---->Widget
不支持的节点NamedTypeImpl<---->extends StatefulWidget---->StatefulWidget
不支持的节点NamedTypeImpl<---->@OverRide _JsonFileExplainState createState() => _JsonFileExplainState();---->_JsonFileExplainState
不支持的节点NamedTypeImpl<---->extends State---->State
不支持的节点NamedTypeImpl<---->int _counter = 0---->int
不支持的节点NamedTypeImpl<---->void _incrementCounter() {setState(() {_counter++;});}---->void
不支持的节点NamedTypeImpl<---->Widget _buildTitle() {return Text('title');}---->Widget
不支持的节点NamedTypeImpl<---->BuildContext context---->BuildContext
不支持的节点NamedTypeImpl<---->@OverRide Widget build(BuildContext context) {return Scaffold(appBar: AppBar(title: _buildTitle()), body: Center(child: Column(mainAxisAlignment: MainAxisAlignment.center, children: [const Text('You have pushed the button this many times:'), Text('$_counter', style: TextStyle(fontSize: 40, color: Color(0xffeb4237), wordSpacing: 0))])), floatingActionButton: FloatingActionButton(onPressed: _incrementCounter, tooltip: 'Increment', child: const Icon(Icons.add)));}---->Widget
不支持的节点NamedTypeImpl<---->extends StatelessWidget---->StatelessWidget
不支持的节点NamedTypeImpl<---->BuildContext context---->BuildContext
不支持的节点NamedTypeImpl<---->@OverRide Widget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text('FairBinding 注解演示')), body: Center(child: Column(mainAxisAlignment: MainAxisAlignment.center, children: [const Text('Hello World!'), FairBindingWidget()])));}---->Widget
[WARNING] fair_compiler:fairc on lib/fair_widget/fair_props_widget.dart:
[Fair] Compile lib/fair_widget/fair_props_widget.dart into bundle...
[WARNING] fair_compiler:fairc on lib/fair_widget/fair_plugin_widget.dart:
[Fair] Compile lib/fair_widget/fair_plugin_widget.dart into bundle...
不支持的节点NamedTypeImpl<---->extends StatefulWidget---->StatefulWidget
不支持的节点NamedTypeImpl<---->@OverRide State createState() => _FairPropsWidgetState();---->State
不支持的节点NamedTypeImpl<---->extends State---->State
不支持的节点NamedTypeImpl<---->String fairText() {return data["fairText"];}---->String
不支持的节点NamedTypeImpl<---->BuildContext context---->BuildContext
不支持的节点NamedTypeImpl<---->@OverRide Widget build(BuildContext context) {return Scaffold(backgroundColor: Colors.white, appBar: AppBar(), body: Container(child: Center(child: Text(fairText(), style: TextStyle(color: Colors.red, fontSize: 20)))));}---->Widget
不支持的节点NamedTypeImpl<---->extends StatefulWidget---->StatefulWidget
不支持的节点NamedTypeImpl<---->@OverRide State createState() => _FairPluginWidgetState();---->State
不支持的节点NamedTypeImpl<---->extends State---->State
不支持的节点NamedTypeImpl<---->BuildContext context---->BuildContext
不支持的节点NamedTypeImpl<---->@OverRide Widget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text("Fair plugin介绍和使用")), body: Container(child: Center(child: GestureDetector(onTap: callPhone, child: Container(height: 50, width: 100, alignment: Alignment.center, child: Text('拨打电话'))))));}---->Widget
[WARNING] fair_compiler:fairc on lib/main.dart:
[Fair] Compile lib/main.dart into bundle...
不支持的节点AwaitExpressionImpl<---->await SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp, DeviceOrientation.portraitDown]);---->await SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp, DeviceOrientation.portraitDown])
不支持的节点NamedTypeImpl<---->BuildContext context---->BuildContext
不支持的节点NamedTypeImpl<---->String key---->String
不支持的节点ConditionalExpressionImpl<---->=> (ModalRoute.of(context)?.settings.arguments is Map) ? (ModalRoute.of(context)?.settings.arguments as Map)[key] : null;---->(ModalRoute.of(context)?.settings.arguments is Map) ? (ModalRoute.of(context)?.settings.arguments as Map)[key] : null
不支持的节点NamedTypeImpl<---->extends StatelessWidget---->StatelessWidget
不支持的节点NamedTypeImpl<---->BuildContext context---->BuildContext
不支持的节点NamedTypeImpl<---->@OverRide Widget build(BuildContext context) {return MaterialApp(title: 'Flutter Demo', theme: ThemeData(primarySwatch: Colors.blue), home: HomePage());}---->Widget
不支持的节点NamedTypeImpl<---->extends StatefulWidget---->StatefulWidget
不支持的节点NamedTypeImpl<---->dynamic fairProps---->dynamic
不支持的节点NamedTypeImpl<---->@OverRide State createState() => _MyHomePageState();---->State
不支持的节点NamedTypeImpl<---->extends State---->State
不支持的节点NamedTypeImpl<---->int _counter = 0---->int
不支持的节点SuperExpressionImpl<---->super.initState()---->super
不支持的节点AssignmentExpressionImpl<---->fairProps = widget.fairProps;---->fairProps = widget.fairProps
不支持的节点NamedTypeImpl<---->@OverRide void initState() {super.initState(); fairProps = widget.fairProps;}---->void
不支持的节点NamedTypeImpl<---->String getTitle() {return fairProps['title'];}---->String
不支持的节点NamedTypeImpl<---->void _incrementCounter() {setState(() {_counter++;});}---->void
不支持的节点NamedTypeImpl<---->BuildContext context---->BuildContext
不支持的节点NamedTypeImpl<---->@OverRide Widget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text(getTitle())), body: Center(child: Column(mainAxisAlignment: MainAxisAlignment.center, children: [const Text('You have pushed the button this many times:'), Text('$_counter', style: TextStyle(fontSize: 40, color: Color(0xffeb4237), wordSpacing: 0))])), floatingActionButton: FloatingActionButton(onPressed: _incrementCounter, tooltip: 'Increment', child: const Icon(Icons.add)));}---->Widget
[WARNING] fair_compiler:fairc on lib/page2page/page_two.dart:
[Fair] Compile lib/page2page/page_two.dart into bundle...
[WARNING] fair_compiler:fairc on lib/page2page/page_one.dart:
[Fair] Compile lib/page2page/page_one.dart into bundle...
不支持的节点NamedTypeImpl<---->extends StatefulWidget---->StatefulWidget
不支持的节点NamedTypeImpl<---->dynamic fairProps---->dynamic
不支持的节点NamedTypeImpl<---->@OverRide _PageTwoState createState() => _PageTwoState();---->_PageTwoState
不支持的节点NamedTypeImpl<---->extends State---->State
不支持的节点SuperExpressionImpl<---->super.initState()---->super
不支持的节点AssignmentExpressionImpl<---->fairProps = widget.fairProps;---->fairProps = widget.fairProps
不支持的节点NamedTypeImpl<---->@OverRide void initState() {super.initState(); fairProps = widget.fairProps;}---->void
不支持的节点NamedTypeImpl<---->String getTitle() {return fairProps['title'];}---->String
不支持的节点NamedTypeImpl<---->BuildContext context---->BuildContext
不支持的节点NamedTypeImpl<---->@OverRide Widget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text('参数:${getTitle()}')), body: Container(child: Padding(padding: EdgeInsets.all(20), child: Text('xxxxx'))));}---->Widget
不支持的节点NamedTypeImpl<---->extends StatefulWidget---->StatefulWidget
不支持的节点NamedTypeImpl<---->@OverRide _PageOneState createState() => _PageOneState();---->_PageOneState
不支持的节点NamedTypeImpl<---->extends State---->State
不支持的节点NamedTypeImpl<---->BuildContext context---->BuildContext
不支持的节点NamedTypeImpl<---->@OverRide Widget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text('PageOne')), body: Container(child: Padding(padding: EdgeInsets.all(20), child: Text('点击右下角按钮跳转到下个页面'))), floatingActionButton: FloatingActionButton(onPressed: () {Navigator.pushNamed(context, 'fair_page_two', arguments: {'path' : 'assets/fair/lib_page2page_page_two.fair.json', 'data' : {'title' : 'PageTwo'}});}, tooltip: 'Increment', child: const Icon(Icons.arrow_forward_sharp)));}---->Widget
[WARNING] fair_compiler:package on lib/$lib$:
FairBindingWidget 😀
[WARNING] fair_compiler:package on lib/$lib$:
constructors ➡️
[WARNING] fair_compiler:package on lib/$lib$:
FairBindingWidget
[WARNING] fair_compiler:package on lib/$lib$:
constructors ⬅️️
[WARNING] fair_compiler:package on lib/$lib$:
skip _FairBindingWidgetState
[WARNING] fair_compiler:package on lib/$lib$:
😀 1 widgets found inside /Users/******/Downloads/Fair-3.0.0 2/example/.dart_tool/build/fairc/source/example/lib/fair_widget/fairbinding/fair_binding_widget.fair.dart
[WARNING] fair_compiler:package on lib/$lib$:
➡️ FairBindingWidget({Key key, })
[WARNING] fair_compiler:package on lib/$lib$:
[Fair] New binding generated. package:example/src/generated.fair.dart
[WARNING] Instance of 'ArchiveBuilder' on example|lib/json_file_explain.bundle.json:
[Fair Dart2JS] partPath => /Users/******/Downloads/Fair-3.0.0 2/example/lib/json_file_explain.dart
[WARNING] Instance of 'ArchiveBuilder' on example|lib/json_file_explain.bundle.json:
[Fair Dart2JS] e => FileSystemException(path=/Users/******/Downloads/Fair-3.0.0%202/example/lib/json_file_explain.dart; message=Cannot open file)
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fair_delegate_widget.bundle.json:
[Fair Dart2JS] partPath => /Users/******/Downloads/Fair-3.0.0 2/example/lib/fair_widget/fair_delegate_widget.dart
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fair_delegate_widget.bundle.json:
[Fair Dart2JS] e => FileSystemException(path=/Users/******/Downloads/Fair-3.0.0%202/example/lib/fair_widget/fair_delegate_widget.dart; message=Cannot open file)
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fairbinding/fair_binding_sample.bundle.json:
[Fair Dart2JS] partPath => /Users/******/Downloads/Fair-3.0.0 2/example/lib/fair_widget/fairbinding/fair_binding_sample.dart
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fairbinding/fair_binding_sample.bundle.json:
[Fair Dart2JS] e => FileSystemException(path=/Users/******/Downloads/Fair-3.0.0%202/example/lib/fair_widget/fairbinding/fair_binding_sample.dart; message=Cannot open file)
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fair_props_widget.bundle.json:
[Fair Dart2JS] partPath => /Users/******/Downloads/Fair-3.0.0 2/example/lib/fair_widget/fair_props_widget.dart
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fair_props_widget.bundle.json:
[Fair Dart2JS] e => FileSystemException(path=/Users/******/Downloads/Fair-3.0.0%202/example/lib/fair_widget/fair_props_widget.dart; message=Cannot open file)
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fair_plugin_widget.bundle.json:
[Fair Dart2JS] partPath => /Users/******/Downloads/Fair-3.0.0 2/example/lib/fair_widget/fair_plugin_widget.dart
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fair_plugin_widget.bundle.json:
[Fair Dart2JS] e => FileSystemException(path=/Users/******/Downloads/Fair-3.0.0%202/example/lib/fair_widget/fair_plugin_widget.dart; message=Cannot open file)
[WARNING] Instance of 'ArchiveBuilder' on example|lib/main.bundle.json:
[Fair Dart2JS] partPath => /Users/******/Downloads/Fair-3.0.0 2/example/lib/main.dart
[WARNING] Instance of 'ArchiveBuilder' on example|lib/main.bundle.json:
[Fair Dart2JS] e => FileSystemException(path=/Users/******/Downloads/Fair-3.0.0%202/example/lib/main.dart; message=Cannot open file)
[WARNING] Instance of 'ArchiveBuilder' on example|lib/page2page/page_two.bundle.json:
[Fair Dart2JS] partPath => /Users/******/Downloads/Fair-3.0.0 2/example/lib/page2page/page_two.dart
[WARNING] Instance of 'ArchiveBuilder' on example|lib/page2page/page_two.bundle.json:
[Fair Dart2JS] e => FileSystemException(path=/Users/******/Downloads/Fair-3.0.0%202/example/lib/page2page/page_two.dart; message=Cannot open file)
[WARNING] Instance of 'ArchiveBuilder' on example|lib/page2page/page_one.bundle.json:
[Fair Dart2JS] partPath => /Users/******/Downloads/Fair-3.0.0 2/example/lib/page2page/page_one.dart
[WARNING] Instance of 'ArchiveBuilder' on example|lib/page2page/page_one.bundle.json:
[Fair Dart2JS] e => FileSystemException(path=/Users/******/Downloads/Fair-3.0.0%202/example/lib/page2page/page_one.dart; message=Cannot open file)
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fair_delegate_widget.bundle.json:
[Fair] FlatBuffer format generated for build/fair/lib_fair_widget_fair_delegate_widget.fair.json
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fair_delegate_widget.bundle.json:
[Fair] New bundle generated => build/fair/lib_fair_widget_fair_delegate_widget.fair.json
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fair_delegate_widget.bundle.json:
[fair] fair_config.json cannot be found
[WARNING] Instance of 'ArchiveBuilder' on example|lib/json_file_explain.bundle.json:
[Fair] FlatBuffer format generated for build/fair/lib_json_file_explain.fair.json
[WARNING] Instance of 'ArchiveBuilder' on example|lib/json_file_explain.bundle.json:
[Fair] New bundle generated => build/fair/lib_json_file_explain.fair.json
[WARNING] Instance of 'ArchiveBuilder' on example|lib/json_file_explain.bundle.json:
[fair] fair_config.json cannot be found
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fairbinding/fair_binding_sample.bundle.json:
[Fair] FlatBuffer format generated for build/fair/lib_fair_widget_fairbinding_fair_binding_sample.fair.json
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fairbinding/fair_binding_sample.bundle.json:
[Fair] New bundle generated => build/fair/lib_fair_widget_fairbinding_fair_binding_sample.fair.json
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fairbinding/fair_binding_sample.bundle.json:
[fair] fair_config.json cannot be found
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fair_props_widget.bundle.json:
[Fair] FlatBuffer format generated for build/fair/lib_fair_widget_fair_props_widget.fair.json
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fair_props_widget.bundle.json:
[Fair] New bundle generated => build/fair/lib_fair_widget_fair_props_widget.fair.json
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fair_props_widget.bundle.json:
[fair] fair_config.json cannot be found
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fair_plugin_widget.bundle.json:
[Fair] FlatBuffer format generated for build/fair/lib_fair_widget_fair_plugin_widget.fair.json
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fair_plugin_widget.bundle.json:
[Fair] New bundle generated => build/fair/lib_fair_widget_fair_plugin_widget.fair.json
[WARNING] Instance of 'ArchiveBuilder' on example|lib/fair_widget/fair_plugin_widget.bundle.json:
[fair] fair_config.json cannot be found
[WARNING] Instance of 'ArchiveBuilder' on example|lib/main.bundle.json:
[Fair] FlatBuffer format generated for build/fair/lib_main.fair.json
[WARNING] Instance of 'ArchiveBuilder' on example|lib/main.bundle.json:
[Fair] New bundle generated => build/fair/lib_main.fair.json
[WARNING] Instance of 'ArchiveBuilder' on example|lib/main.bundle.json:
[fair] fair_config.json cannot be found
[WARNING] Instance of 'ArchiveBuilder' on example|lib/page2page/page_two.bundle.json:
[Fair] FlatBuffer format generated for build/fair/lib_page2page_page_two.fair.json
[WARNING] Instance of 'ArchiveBuilder' on example|lib/page2page/page_two.bundle.json:
[Fair] New bundle generated => build/fair/lib_page2page_page_two.fair.json
[WARNING] Instance of 'ArchiveBuilder' on example|lib/page2page/page_two.bundle.json:
[fair] fair_config.json cannot be found
[WARNING] Instance of 'ArchiveBuilder' on example|lib/page2page/page_one.bundle.json:
[Fair] FlatBuffer format generated for build/fair/lib_page2page_page_one.fair.json
[WARNING] Instance of 'ArchiveBuilder' on example|lib/page2page/page_one.bundle.json:
[Fair] New bundle generated => build/fair/lib_page2page_page_one.fair.json
[WARNING] Instance of 'ArchiveBuilder' on example|lib/page2page/page_one.bundle.json:
[fair] fair_config.json cannot be found
[INFO] Running build completed, took 23.5s
[INFO] Caching finalized dependency graph...
[INFO] Caching finalized dependency graph completed, took 44ms
[INFO] Succeeded after 23.6s with 10 outputs (50 actions)
环境:flutter doctor --verbose
[✓] Flutter (Channel stable, 3.3.2, on macOS 12.2.1 21D62 darwin-x64, locale zh-Hans-CN)
• Flutter version 3.3.2 on channel stable at /Users/******/Dev/Flutter/flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision e3c29ec00c (3 months ago), 2022-09-14 08:46:55 -0500
• Engine revision a4ff2c53d8
• Dart version 2.18.1
• DevTools version 2.15.0
• Pub download mirror https://pub.flutter-io.cn
• Flutter download mirror https://storage.flutter-io.cn
[!] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
• Android SDK at /Users/******/Library/Android/sdk
✗ cmdline-tools component is missing
Run path/to/sdkmanager --install "cmdline-tools;latest"
See https://developer.android.com/studio/command-line for more details.
✗ Android license status unknown.
Run flutter doctor --android-licenses to accept the SDK licenses.
See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.
[✓] Xcode - develop for iOS and macOS (Xcode 13.4.1)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Build 13F100
• CocoaPods version 1.11.2
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 4.0)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin version 48.1.2
• Dart plugin version 193.7547
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
[✓] VS Code (version 1.73.1)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.54.0
[✓] Connected device (3 available)
• iPhone 12 Pro (mobile) • 23E5780C-5DDC-4573-91C1-7C25F2699A51 • ios •
com.apple.CoreSimulator.SimRuntime.iOS-15-5 (simulator)
• macOS (desktop) • macos • darwin-x64 • macOS 12.2.1 21D62
darwin-x64
• Chrome (web) • chrome • web-javascript • Google Chrome
108.0.5359.94
[✓] HTTP Host Availability
• All required HTTP hosts are available
! Doctor found issues in 1 category.