【问题标题】:Error with Ruby gems (Ruby on Rails)Ruby gem 错误(Ruby on Rails)
【发布时间】:2017-06-15 14:36:46
【问题描述】:

我的 gemfile 仍然出现错误,我可以下载所有 gem,但是在“rails 服务器”的那一刻,我收到了这个错误:

/home/administrador/.rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/runtime.rb:94:in `rescue in block (2 levels) in require': There was an error while trying to load the gem 'will_paginate'. (Bundler::GemRequireError)
Gem Load Error is: uninitialized constant ActiveSupport::LogSubscriber
Backtrace for gem load error is:
/home/administrador/.rvm/gems/ruby-2.4.0/gems/activerecord-3.0.5/lib/active_record/log_subscriber.rb:2:in `<module:ActiveRecord>'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/activerecord-3.0.5/lib/active_record/log_subscriber.rb:1:in `<top (required)>'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/activerecord-3.0.5/lib/active_record/base.rb:24:in `<top (required)>'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/will_paginate-2.3.15/lib/will_paginate.rb:33:in `require'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/will_paginate-2.3.15/lib/will_paginate.rb:33:in `enable_activerecord'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/will_paginate-2.3.15/lib/will_paginate.rb:88:in `<top (required)>'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/runtime.rb:91:in `require'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/runtime.rb:91:in `block (2 levels) in require'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/runtime.rb:86:in `each'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/runtime.rb:86:in `block in require'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/runtime.rb:75:in `each'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/runtime.rb:75:in `require'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler.rb:106:in `require'
/home/administrador/Documents/forminst4/config/application.rb:7:in `<top (required)>'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/railties-3.0.5/lib/rails/commands.rb:28:in `require'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/railties-3.0.5/lib/rails/commands.rb:28:in `block in <top (required)>'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/railties-3.0.5/lib/rails/commands.rb:27:in `tap'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/railties-3.0.5/lib/rails/commands.rb:27:in `<top (required)>'
script/rails:6:in `require'
script/rails:6:in `<main>'
Bundler Error Backtrace:
    from /home/administrador/.rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/runtime.rb:90:in `block (2 levels) in require'
    from /home/administrador/.rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/runtime.rb:86:in `each'
    from /home/administrador/.rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/runtime.rb:86:in `block in require'
    from /home/administrador/.rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/runtime.rb:75:in `each'
    from /home/administrador/.rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/runtime.rb:75:in `require'
    from /home/administrador/.rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler.rb:106:in `require'
    from /home/administrador/Documents/forminst4/config/application.rb:7:in `<top (required)>'
    from /home/administrador/.rvm/gems/ruby-2.4.0/gems/railties-3.0.5/lib/rails/commands.rb:28:in `require'
    from /home/administrador/.rvm/gems/ruby-2.4.0/gems/railties-3.0.5/lib/rails/commands.rb:28:in `block in <top (required)>'
    from /home/administrador/.rvm/gems/ruby-2.4.0/gems/railties-3.0.5/lib/rails/commands.rb:27:in `tap'
    from /home/administrador/.rvm/gems/ruby-2.4.0/gems/railties-3.0.5/lib/rails/commands.rb:27:in `<top (required)>'
    from script/rails:6:in `require'
    from script/rails:6:in `<main>'

这是我的 gemfile:

source 'http://rubygems.org'

gem 'rails', '3.0.5'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

gem 'mysql2', '~> 0.2.6'
gem 'prawn', '0.8.4'
gem 'jquery-rails'
gem 'carrierwave'
gem 'will_paginate', '2.3.15'
gem 'net-ldap', '0.3.1'
gem 'cancan', '1.6.10'
gem 'therubyracer'

如果您能帮我解决这个问题,我将不胜感激!非常感谢

编辑:我尝试将“gem 'will_paginate', '~> 3.1.0'” 添加到我的 gemfile.. 并且当我运行 rails server 时出现此错误

/home/administrador/.rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/runtime.rb:94:in `rescue in block (2 levels) in require': There was an error while trying to load the gem 'cancan'. (Bundler::GemRequireError)
Gem Load Error is: uninitialized constant AbstractController::ViewPaths
Backtrace for gem load error is:
/home/administrador/.rvm/gems/ruby-2.4.0/gems/actionpack-3.0.5/lib/abstract_controller/rendering.rb:36:in `<module:Rendering>'
/home/administrador/.rvm/gems/ruby-2.4.0/gems/actionpack-3.0.5/lib/abstract_controller/rendering.rb:33:in `<module:AbstractController>'....(same as above)

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4 rubygems


    【解决方案1】:

    只需更新您的 gemfile

    gem 'will_paginate', '~> 3.1.0'
    

    rails 3 或 3+ 版本需要以上版本才能分页

    参考这个https://github.com/mislav/will_paginate

    【讨论】:

    • 对不起,但也不起作用...我收到以下错误:ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/runtime.rb:94 :in `rescue in block (2 levels) in require': 尝试加载 gem 'cancan' 时出错。 (Bundler::GemRequireError) Gem 加载错误是:未初始化的常量 AbstractController::ViewPaths
    • 你是否安装了 node.js 如果没有然后运行这个命令'sudo apt-get install nodejs'
    • 是的,它安装在我的机器上。我不知道 ruby​​ 版本(2.4.0)是否介于两者之间。
    • 是的,有可能,尝试切换 ruby​​ 2.3,希望它会工作
    猜你喜欢
    • 1970-01-01
    • 2013-01-13
    • 1970-01-01
    • 2015-07-15
    • 2019-03-01
    • 1970-01-01
    • 2014-03-02
    • 2018-04-04
    • 1970-01-01
    相关资源
    最近更新 更多