我在 Dart 中使用聚合物已经有一段时间了。最近我去运行一个长期运行的项目,我的 build.dart 文件有问题。在没有运气将其剥离为裸露的骨头之后,我开始了一个新的“使用聚合物库 [移动友好] 的示例 Web 应用程序”(默认的 clickcounter 示例),在进行任何修改之前,我仍然得到以下未处理的异常:
build.dart 返回错误代码 255
Unhandled exception:
No top-level getter 'path.Style' declared.
NoSuchMethodError: method not found: 'path.Style'
Receiver: top-level
Arguments: [...]
#0 NoSuchMethodError._throwNew (dart:core-patch/errors_patch.dart:168)
#1 systemToAssetPath (package:polymer/src/build/common.dart:219:7)
#2 MappedListIterable.elementAt (dart:_internal/iterable.dart:397)
#3 ListIterable.toList (dart:_internal/iterable.dart:214)
#4 TransformOptions.TransformOptions (package:polymer/src/build/common.dart:101:54)
#5 lint (package:polymer/builder.dart:148:27)
#6 build (package:polymer/builder.dart:122:13)
#7 main (file:///home/dom/Development/dart/click_counter/build.dart:4:8)
#8 _startIsolate.isolateStartHandler (dart:isolate-patch/isolate_patch.dart:212)
#9 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:122)
我的(未修改的)build.dart 文件如下:
导入“包:聚合物/builder.dart”;
main(args) {
build(entryPoints: ['web/click_counter.html'],
options: parseOptions(args));
}
如果我尝试在 dartium 中运行它,我会得到以下信息:
Loading polymer/src/build/mirrors_remover, polymer/src/build/delete_file, polymer/src/build/remove_sourcemap_comment, observe and smoke/src/default_transformer transformers...
in ShutdownIsolate: Unhandled exception:
Uncaught Error: 'http://localhost:37071/packages/$pub/serialize/exception.dart': malformed type: line 46 pos 43: type 'Chain' is not loaded
'stack': stack == null ? null : new Chain.forTrace(stack).toString()
^
type error.
...
然后它卡在“正在加载聚合物变压器......”
从欢迎页面运行未修改的“ToDoMVC”示例时,我遇到了类似的问题,尽管运行时的错误是“path.prettyUri”NoSuchMethodError。
我已经尝试过多种版本的聚合物(0.13.1、0.13.0+3、0.12.2+1、0.12.0+1、0.10.0)。我正在使用 Dart 编辑器和 SDK 1.6.0。
我不是一个特别高级的用户,所以没有故意挖任何可怕的地方。
提前致谢。
最佳答案
正如 Günter 在评论中建议的那样,这可能是一个损坏的包缓存。
删除文件夹不起作用的原因是您看到的包文件夹实际上只是指向共享中心位置的符号链接(symbolic link);所以你需要点击链接并删除源文件夹以消除损坏。
关于dart - Polymer build.dart - clickcounter 示例中未处理的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25779778/