尝试运行Rails应用程序时出现冻结错误

时间:2019-03-22 13:51:54

标签: ruby-on-rails

我正在运行Rails应用程序,现在它在控制台中显示以下错误并且Web应用程序未加载时。

  

FrozenError(无法修改冻结的致命错误):

请帮忙,因为我什至不知道这是什么。如果有提及,将提供任何其他代码详细信息。

3 个答案:

答案 0 :(得分:1)

最后,我找到了原因。在这里,我将解释为该问题找到解决方案的方式,以便它可以帮助遇到相同错误的其他人。

我看了FrozenError类文档,发现它是在ruby 2.5.x和更高版本中引入的。这是文件 FrozenError Doc。我只是首先将ruby版本升级到最新的2.6.x,但这并不能解决问题。

修复:

  • 将ruby版本低于2.5.x降级到2.4.x。
  • 现在在2.4.x中,此FrozenError类不存在。
  • 我现在可以看到导致问题的真正错误。那是个 SystemStackError
  • 这是由于项目(wicked_pdf)中的宝石引起的。
  • 移除宝石解决了我的问题。

答案 1 :(得分:1)

将Rails应用程序从4.2.10升级到5.0时出现相同的错误。该错误仅发生在wicked_pdf 2.0.1上,降级到wicked_pdf 1.4.0也可以解决问题。

答案 2 :(得分:0)

对我来说,它是在我运行resource.class后试图找到build_resource时发生的,

为解决此问题,我从resource对象中删除了.class