【问题标题】:uninitialized constant Psych::Syck (NameError)未初始化的常量 Psych::Syck (NameError)
【发布时间】:2011-08-04 06:50:17
【问题描述】:

在我的 gem 中,我需要 yaml 并且在本地计算机上运行良好。

但是在将我的 gem 推送到 ruby​​gems.org 之后,当我尝试使用我的 gem 时,我收到一条错误消息 =>“未初始化的常量 Psych::Syck (NameError)”

谁能帮我解决这个问题?

附言

Ruby Version => ruby 1.9.2,
Gem Version => 1.6.2,
Bundler version => 1.0.15

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-3 rubygems


    【解决方案1】:

    经过几个小时的研究,我发现 =>“YAML 使用未维护的 Syck 库,而 Psych 使用现代的 LibYAML”

    因此,为了解决该错误,我必须更新我的 gem(gem update --system 即 1.8.6)并在需要 yaml 之前挽救 Psych 抛出的 LoadError,如下所示:

    begin
     require 'psych'
     rescue ::LoadError
    end
    
    require 'yaml'
    

    来源:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-12-20
      • 2011-05-31
      • 1970-01-01
      • 2011-07-07
      • 1970-01-01
      • 2015-01-19
      • 2015-10-29
      • 1970-01-01
      相关资源
      最近更新 更多