不兼容的编组文件格式(无法读取)格式版本4.8要求;给出0.0

时间:2014-05-13 11:23:18

标签: ruby ruby-on-rails-4

我收到以下错误:

incompatible marshal file format (can't be read)
format version 4.8 required; 0.0 given

在这一行:

  <%= stylesheet_link_tag "application", media: "all",

从我的布局文件的这一部分:

  <html>
    <head>
      <title><%= full_title(yield(:title)) %></title>
      <%= stylesheet_link_tag "application", media: "all",
                                             "data-turbolinks-track" => true %>
      <%= javascript_include_tag "application", "data-turbolinks-track" => true %>
      <%= csrf_meta_tags %>

我以前从未遇到过这个问题,网上的解释对我来说太高级了,或者与制作游戏的人有关,我的项目是一个简单的rails应用程序,我刚刚开始。

4 个答案:

答案 0 :(得分:5)

您是否尝试过清算资产? bundle exec rake assets:clean

然后重新编译: bundle exec rake assets:precompile

你是否在某种程度上混淆了Ruby版本?也许您正在使用1.9进行预编译并通过Passenger运行Rails或使用2.0运行?

答案 1 :(得分:3)

我不得不删除rails_root / tmp / cache中的sass和sprockets文件夹。

答案 2 :(得分:3)

修复:更改密钥库以使所有会话无效,尤其是在Rails升级后。

答案 3 :(得分:0)

好吧,我会把它放在这里以防万一。

在我的开发机停电后,我遇到了类似的问题。列出的精确解决方案(显式资产清除甚至删除tmp/cache文件夹)对我不起作用。

什么有效,是锤击:

rm -rf $RAILS_ROOT/tmp