2015-04-04 77 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