2013-02-13 48 views
2

我剛剛更新到Rails 3.2.12,並且Bundler也更新了libxml-ruby從2.4.0到2.5.0。當我重新啓動我的生產服務器(nginx的),或試圖打開一個控制檯,我得到:Rails應用程序啓動時的Libxml-ruby錯誤 - 未初始化的常量LibXML :: XML :: Error :: I18N

/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)>' 

我並沒有在我的dev的框相同的問題。

我能想到的是,一些2.5.0 gem仍然引用舊的2.4.0編譯庫,並且這個特定的常量沒有在它們中定義。但不知道這將如何發生,以及如何糾正它。也不是這是否正確。

任何想法都會受到歡迎。

回答

2

我有同樣的問題,它在生產上失敗,但在本地工作。我嘗試凍結gem libxml-ruby到2.4.0的版本,它的功能就像一個魅力。

希望它有幫助!

0

該問題發生在舊版本的libxml上。我剛剛發佈了更新版本的libxml-ruby,2.6.0,它可以解決問題。

相關問題