2013-07-21 77 views
1

我的Rails应用程序没有运行,我收到错误:Rails的:无法加载这样的文件 - safe_yaml /变换/ to_symbol(LoadError)

cannot load such file -- safe_yaml/transform/to_symbol (LoadError) 

我不知道为什么这个错误即将到来。当我删除的宝石 'safe_yaml',它给了错误:

Could not find safe_yaml-0.9.4 in any of the sources (Bundler::GemNotFound) 

当我安装宝石safe_yaml-0.9.4,它提供了:

cannot load such file -- safe_yaml/transform/to_symbol (LoadError) 

有人可以告诉你怎么解决这个问题?

谢谢

+0

请至少显示完整的错误堆栈跟踪,现在不可能知道任何东西。此外:有些事情引起了这种变化,是的?更重要的是,你更新了另一个宝石?可能是依赖关系有问题。 – nathanvda

回答

3

safe_yaml版本有问题。

我有rails-admin 0.4.9。为此,需要safe_yaml 0.6.3,其中rails_admin 0.4.9安装safe_yaml 0.9.4。

所以我在我的gemfile中分别包含了safe_yaml 0.6.3,并删除了safe_yaml 0.6.4。

而且一切正常!

感谢大家的帮助。

3

safe_yaml 0.9.4发行版中存在一个错误。文件lib/safe_yaml/transform/to_symbol.rb具有640而不是644的权限。如果您的gem以根用户身份进行安装,则这会导致文件无法被root以外的任何内容读取。除了回落到0.9.3(我认为这是之前海报的真正含义而不是0.6.3),你可以自己将文件chmod改为644,你可以通过这个bug。

+0

真的很不错的解决方案,谢谢! – Geoffroy

相关问题