gpt4 book ai didi

ruby-on-rails - 是什么导致私有(private)方法 `gsub` 调用 nil :NilClass during Rails migration?

转载 作者:太空宇宙 更新时间:2023-11-03 16:55:50 25 4
gpt4 key购买 nike

我以前从未发送过这个。我正在使用现有应用程序配置新服务器。尝试运行迁移,这是输出。

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,但我也无法获得控制台。私有(private)方法 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),但无法在那里重现此问题。

最佳答案

这是 bundler 中的一个 bug,它是为 rvm-capistrano 报告的,请检查你的 Gemfile 并尝试删除/评论一些 gems。

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

关于ruby-on-rails - 是什么导致私有(private)方法 `gsub` 调用 nil :NilClass during Rails migration?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9951671/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com