簡體   English   中英

是什么導致在Rails遷移期間私有方法`gsub`調用nil:NilClass?

[英]What is causing private method `gsub` called for nil:NilClass during Rails migration?

我從來沒有寄過這個。 我正在使用現有應用程序配置新服務器。 嘗試運行遷移,這是輸出。

root@beta:/vol/opt/dev/capistrano/foo-alpha/releases/20120330233010# RAILS_ENV=production rake db:migrate --trace
rake aborted!
private method `gsub' called for nil:NilClass
/usr/local/rvm/gems/jruby-1.6.6@global/gems/bundler-1.1.3/lib/bundler/runtime.rb:77:in `require'
org/jruby/RubyArray.java:1614:in `each'
/usr/local/rvm/gems/jruby-1.6.6@global/gems/bundler-1.1.3/lib/bundler/runtime.rb:55:in `require'
/usr/local/rvm/gems/jruby-1.6.6@global/gems/bundler-1.1.3/lib/bundler.rb:119:in `require'
/vol/opt/dev/capistrano/foo-alpha/releases/20120330233010/config/application.rb:7:in `(root)'
org/jruby/RubyKernel.java:1027:in `require'
/usr/local/rvm/rubies/jruby-1.6.6/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `require'
/vol/opt/dev/capistrano/foo-alpha/releases/20120330233010/config/application.rb:4:in `(root)'
org/jruby/RubyKernel.java:1052:in `load'
/vol/opt/dev/capistrano/foo-alpha/releases/20120330233010/Rakefile:25:in `load_rakefile'
/usr/local/rvm/gems/jruby-1.6.6@foo/gems/rake-0.9.2.2/lib/rake/application.rb:501:in `raw_load_rakefile'
/usr/local/rvm/gems/jruby-1.6.6@foo/gems/rake-0.9.2.2/lib/rake/application.rb:82:in `load_rakefile'
/usr/local/rvm/gems/jruby-1.6.6@foo/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling'
/usr/local/rvm/gems/jruby-1.6.6@foo/gems/rake-0.9.2.2/lib/rake/application.rb:81:in `load_rakefile'
/usr/local/rvm/gems/jruby-1.6.6@foo/gems/rake-0.9.2.2/lib/rake/application.rb:65:in `run'
/usr/local/rvm/gems/jruby-1.6.6@foo/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling'
/usr/local/rvm/gems/jruby-1.6.6@foo/gems/rake-0.9.2.2/lib/rake/application.rb:63:in `run'
/usr/local/rvm/gems/jruby-1.6.6@foo/gems/rake-0.9.2.2/bin/rake:33:in `(root)'
org/jruby/RubyKernel.java:1052:in `load'
/usr/local/rvm/gems/jruby-1.6.6@foo/bin/rake:19:in `(root)'

我的本地筆記本電腦和現有服務器上的遷移工作正常。 config / database.yml看起來正確。 數據庫已啟動並正在運行,我可以連接到它。 這是什么?

我還測試了rails console ,但也無法獲得控制台。 同樣,私有方法gsub調用了nil:NilClass。 它與連接數據庫有某種關系,我不確定如何/為什么。

**更新**

將一些調試添加到runtime.rb之后,這是引發的異常:

#<LoadError: no such file to load -- activerecord-jdbcmysql-adapter>

混亂的部分是,它已安裝:

# gem list |grep -i activerecord-jdbcmysql-adapter
activerecord-jdbcmysql-adapter (1.2.2)

這是某種RVM還是捆綁程序錯誤?

** 最后更新 **

我安裝了Amazon Linux AMI(另一個正在運行Ubuntu),並且無法在此復制此問題。

這是捆綁程序中的錯誤,據報道是rvm-capistrano的錯誤,請檢查您的Gemfile並嘗試刪除/注釋一些寶石。

https://github.com/carlhuda/bundler/issues/1801

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM