ruby-on-rails - Rails 应用程序启动时出现 Libxml-ruby 错误 -- 未初始化常量 LibXML::XML::Error::I18N

标签 ruby-on-rails libxml-ruby

我刚刚更新到 Rails 3.2.12,Bundler 也将 libxml-ruby 从 2.4.0 更新到 2.5.0。当我重新启动生产服务器(nginx)或尝试打开控制台时,我得到:

/home/cceom/webapps/rails2/gems/gems/libxml-ruby-2.5.0/lib/libxml/error.rb:10:in `const_get': uninitialized constant LibXML::XML::Error::I18N (NameError)
    from /home/cceom/webapps/rails2/gems/gems/libxml-ruby-2.5.0/lib/libxml/error.rb:10:in `block (2 levels) in <class:Error>'
    from /home/cceom/webapps/rails2/gems/gems/libxml-ruby-2.5.0/lib/libxml/error.rb:8:in `each'
    from /home/cceom/webapps/rails2/gems/gems/libxml-ruby-2.5.0/lib/libxml/error.rb:8:in `block in <class:Error>'
    from /home/cceom/webapps/rails2/gems/gems/libxml-ruby-2.5.0/lib/libxml/error.rb:7:in `tap'
    from /home/cceom/webapps/rails2/gems/gems/libxml-ruby-2.5.0/lib/libxml/error.rb:7:in `<class:Error>'
    from /home/cceom/webapps/rails2/gems/gems/libxml-ruby-2.5.0/lib/libxml/error.rb:5:in `<module:XML>'
    from /home/cceom/webapps/rails2/gems/gems/libxml-ruby-2.5.0/lib/libxml/error.rb:4:in `<module:LibXML>'
    from /home/cceom/webapps/rails2/gems/gems/libxml-ruby-2.5.0/lib/libxml/error.rb:3:in `<top (required)>'
    from /home/cceom/webapps/rails2/gems/gems/libxml-ruby-2.5.0/lib/libxml.rb:11:in `<top (required)>'
    from /home/cceom/webapps/rails2/gems/gems/libxml-ruby-2.5.0/lib/xml.rb:13:in `<top (required)>'

我的开发盒上没有遇到同样的问题。

我能想到的是,2.5.0 gem 仍然引用旧的 2.4.0 编译库,并且其中没有定义特定的常量。但不知道这种情况会如何发生,也不知道如何纠正。也不知道这是否正确。

欢迎任何想法。

最佳答案

我遇到了同样的问题,它在生产中失败,但在本地工作。我尝试将 gem libxml-ruby 的版本卡住到 2.4.0,它的效果非常好。

希望对你有帮助!

关于ruby-on-rails - Rails 应用程序启动时出现 Libxml-ruby 错误 -- 未初始化常量 LibXML::XML::Error::I18N,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14845512/

相关文章:

ruby-on-rails - Railsdelayed_job 作业执行的确切顺序

ruby-on-rails - assert_not_in_array

macos - libxml-ruby:无法构建 gem native 扩展

validation - 我如何告诉 libxml-ruby 有关外部实体文件的信息?

ruby - 使用 ruby​​-libxml 在 root 之外添加注释节点

ruby-on-rails - 新手,关于 Rake 任务语法

ruby-on-rails - 未初始化的常量 Rack::MiniProfiler 暂存

ruby-on-rails - 如何获取具有不同值的列名

rubygems - gem 安装 libxml-ruby : fatal error: 'plist/Node.h' file not found

Ruby:无法使用 Libxml-ruby 保存文档