我无法使用rails的命令运行Rails服务器。它引发NoMethodError

问题描述 投票:0回答:1

[当我尝试启动Rails服务器时,出现以下错误:

22: from bin/rails:4:in `<main>'
        21: from bin/rails:4:in `require'
        20: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails/commands.rb:17:in `<top (required)>'
        19: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
        18: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails/commands/commands_tasks.rb:73:in `server'
        17: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails/commands/commands_tasks.rb:123:in `require_command!'
        16: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails/commands/commands_tasks.rb:123:in `require'
        15: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails/commands/server.rb:4:in `<top (required)>'
        14: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails/commands/server.rb:4:in `require'
        13: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails.rb:11:in `<top (required)>'
        12: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails.rb:11:in `require'
        11: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails/application.rb:7:in `<top (required)>'
        10: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails/application.rb:7:in `require'
         9: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails/engine.rb:1:in `<top (required)>'
         8: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails/engine.rb:1:in `require'
         7: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails/railtie.rb:2:in `<top (required)>'
         6: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails/railtie.rb:2:in `require'
         5: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails/configuration.rb:2:in `<top (required)>'
         4: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/railties-4.2.10/lib/rails/configuration.rb:2:in `require'
         3: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/activesupport-4.2.10/lib/active_support/core_ext/object.rb:3:in `<top (required)>'
         2: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/activesupport-4.2.10/lib/active_support/core_ext/object.rb:3:in `require'
         1: from /root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/activesupport-4.2.10/lib/active_support/core_ext/object/duplicable.rb:106:in `<top (required)>'
/root/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/activesupport-4.2.10/lib/active_support/core_ext/object/duplicable.rb:111:in `<class:BigDecimal>': undefined method `new' for BigDecimal:Class (NoMethodError)

我正在Windows的Ubuntu中的Bash上使用Rails。

这里是版本:

  • Rails 4.2.10
  • Ruby 2.7.1p83
  • railties-4.2.10
ruby-on-rails ruby ubuntu-16.04
1个回答
1
投票

您正在尝试在最新版本的Ruby上运行旧版本的Rails,但是Rails 4.2与Ruby 2.7不兼容。

根据“ Which Ruby on Rails is compatible with which Ruby version?”降级到Ruby到2.3或2.4应该可以解决。

Rails 4.2早已停产,现在不受支持,并且将不再获得任何安全更新。我建议优先升级应用程序的Rails版本。

© www.soinside.com 2019 - 2024. All rights reserved.