“错误 - :演员坠毁!赛璐珞:: DeadActorError:试图打电话给死去的演员”当跑“jekyll watch”或“jekyll serve”时

时间:2015-07-23 19:46:39

标签: ruby jekyll celluloid

当我运行jekyll watch时,Jekyll将检测到一个更改,然后将停止检测任何进一步的更改。通过按Ctrl + C取消,我得到这个输出:

E, [2015-07-23T15:38:41.307871 #1094] ERROR -- : Actor crashed!
Celluloid::DeadActorError: attempted to call a dead actor
    /Library/Ruby/Gems/2.0.0/gems/celluloid-0.16.0/lib/celluloid/responses.rb:29:in value'
    /Library/Ruby/Gems/2.0.0/gems/celluloid-0.16.0/lib/celluloid/calls.rb:92:in value'
    /Library/Ruby/Gems/2.0.0/gems/celluloid-0.16.0/lib/celluloid/proxies/sync_proxy.rb:33:in method_missing'
    /Library/Ruby/Gems/2.0.0/gems/listen-2.10.1/lib/listen/file.rb:9:in change'
    /Library/Ruby/Gems/2.0.0/gems/listen-2.10.1/lib/listen/change.rb:40:in change'
    /Library/Ruby/Gems/2.0.0/gems/celluloid-0.16.0/lib/celluloid/calls.rb:26:in public_send'
    /Library/Ruby/Gems/2.0.0/gems/celluloid-0.16.0/lib/celluloid/calls.rb:26:in dispatch'
    /Library/Ruby/Gems/2.0.0/gems/celluloid-0.16.0/lib/celluloid/calls.rb:63:in dispatch'
    /Library/Ruby/Gems/2.0.0/gems/celluloid-0.16.0/lib/celluloid/cell.rb:60:in block in invoke'
    /Library/Ruby/Gems/2.0.0/gems/celluloid-0.16.0/lib/celluloid/cell.rb:71:in block in task'
    /Library/Ruby/Gems/2.0.0/gems/celluloid-0.16.0/lib/celluloid/actor.rb:357:in block in task'
    /Library/Ruby/Gems/2.0.0/gems/celluloid-0.16.0/lib/celluloid/tasks.rb:57:in block in initialize'
    /Library/Ruby/Gems/2.0.0/gems/celluloid-0.16.0/lib/celluloid/tasks/task_fiber.rb:15:in block in create'

我对Ruby并不熟悉,但看起来赛璐珞出现了问题。我已经尝试重新安装Jekyll,我甚至尝试从我的系统中擦除所有宝石并重新安装所有宝石都无济于事。任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:1)

  1. 更新至0.17.0或更高Celluloid
  2. 在手表运行一次后重新应用,看看是否能解决它。
  3. DeadActorError要么由#1解决,要么是关闭的副作用。
  4. 尝试Rubinius或jRuby。