2015-04-04 57 views
0

我有一个非常有趣的问题,我遇到了,我正在从.dart文件本地运行我的Dart系统。但是在构建过程中,我生成了.snapshot文件,运行时收到“错误的脚本快照版本”错误。使用飞镖快照 - “错误的脚本快照版本”

正如各种电子邮件列表中的建议,我尝试通过运行'dart'来重建快照。

我目前使用的是Dart 1.9.1。

谢谢。
ps。飞镖岩! :)

+0

你是知道你在哪里创建快照并在您执行达特VM快照是完全一样的?相同的版本,相同的平台? 也许你可以在Docker容器中创建快照,作为dockerfile中的任务。 – 2015-04-04 20:31:11

+0

好吧,为了理智的原因,我重新下载了Dart 1.9.1,用它来构建一个新的快照,然后用该快照和相同的Dart 1.9.1 sdk重建Docker镜像,并再次抛出相同的错误。至于在容器Id中创建快照而不是,因为我有一个自定义构建系统,可以在创建快照之前和之后执行其他处理,并且我的docker容器是通过静态Dockerfiles构建的.... – deepblue 2015-04-04 21:19:55

+0

命令如何看起来像在Docker中调用你的Dart快照? – 2015-04-04 21:23:40

回答

1

很奇怪。实际上,我在Dart构建函数中使用了--enable_async标志(来自1.8.5 SDK),只要我将它们移除,生成的shapshots就是有效的。

0

这通常发生在您升级Dart时,但不会自动删除先前版本的Dart创建的现有快照/project-name/.pub/bin

我会尝试删除整个文件夹:

$ rm -rf .pub 

,然后通过运行达特再生快照:

$ pub get 
$ dart main.dart