编译错误:无法使用 flutter_eval 找到导入“dart:ui”

问题描述 投票:0回答:1

我已经在我的 Flutter 项目中设置了 flutter_eval,但是当我尝试编译

.evc
文件时

import 'package:eval_annotation/eval_annotation.dart'; import 'package:flutter/material.dart'; @RuntimeOverride('#myHomePage') Widget myHomePageUpdate(BuildContext context) { final elements = List.generate(10, (index) => Text('Number: $index')); return Scaffold( appBar: AppBar(title: const Text('Home Page')), body: Column(children: elements), ); }

dart_eval compile -o update.evc
但是我收到以下错误:

Loading files... Adding packages from package config: async boolean_selector characters clock collection eval_annotation fake_async flutter_lints lints matcher material_color_utilities meta path source_span stack_trace stream_channel string_scanner term_glyph test_api vector_math web sky_engine flutter flutter_test Compiling package hot_part... Unhandled exception: CompileError: Cannot find import 'dart:ui' (while parsing 'package:hot_part/hot_part.dart') at unknown #0 _resolveImportsAndExports.<anonymous closure> (package:dart_eval/src/eval/compiler/compiler.dart:969:16) #1 MappedListIterable.elementAt (dart:_internal/iterable.dart:425:31) #2 ListIterable.toSet (dart:_internal/iterable.dart:229:18) #3 _resolveImportsAndExports (package:dart_eval/src/eval/compiler/compiler.dart:971:12) #4 Compiler.compileSources (package:dart_eval/src/eval/compiler/compiler.dart:322:33) #5 Compiler.compile (package:dart_eval/src/eval/compiler/compiler.dart:164:12) #6 cliCompile (package:dart_eval/src/eval/cli/compile.dart:126:34) #7 main (file:[REDACTED]:71:5) #8 _delayEntrypointInvocation.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:295:33) #9 _RawReceivePort._handleMessage (dart:isolate-patch/isolate_patch.dart:184:12)
    
flutter dart eval code-push
1个回答
0
投票
热插拔包缺少 Flutter 框架绑定,导致编译器无法创建打包代码。

前往

flutter_eval 项目的发布页面,获取与当前 flutter_eval 版本匹配的 flutter_eval.json

 文件。将文件放入 
package's 目录 .dart_eval/bindings
,如下所示:

lib/ pubspec.yaml ... .dart_eval/ bindings/ flutter_eval.json
    
© www.soinside.com 2019 - 2024. All rights reserved.