Приложение Sinatra - Дробовик не работает - "не могу загрузить такой файл - стойка /commonlogger (LoadError)"

Когда я пытаюсь запустить приложение Sinatra с помощью Shotgun, я вижу LoadError:

E-MBP:test_app admin$ shotgun app.rb
/Users/admin/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:127:in `require': cannot load such file -- rack/commonlogger (LoadError)
from /Users/admin/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:127:in `rescue in require'
from /Users/admin/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:40:in `require'
from /Users/admin/.rvm/gems/ruby-2.3.1/gems/shotgun-0.9.1/bin/shotgun:112:in `<top (required)>'
from /Users/admin/.rvm/gems/ruby-2.3.1/bin/shotgun:23:in `load'
from /Users/admin/.rvm/gems/ruby-2.3.1/bin/shotgun:23:in `<main>'
from /Users/admin/.rvm/gems/ruby-2.3.1/bin/ruby_executable_hooks:15:in `eval'
from /Users/admin/.rvm/gems/ruby-2.3.1/bin/ruby_executable_hooks:15:in `<main>'

Там не было ошибки раньше!

"ruby app.rb" все еще работает, и я вижу свою главную страницу в браузере:

E-MBP:test_app admin$ ruby app.rb
== Sinatra (v1.4.7) has taken the stage on 4567 for development with backup from Thin
Thin web server (v1.7.0 codename Dunder Mifflin)
Maximum connections set to 1024
Listening on localhost:4567, CTRL+C to stop

Как я могу решить эту проблему?


E-MBP:test_app admin$ ruby -v
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin15]
E-MBP:test_app admin$ rvm -v
rvm 1.27.0 (master) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]

Папка Sinatra содержит только один файл - test_app/app.rb:

require 'sinatra'

get '/' do
  "Hello!"
end

Драгоценные камни грабли / дробовик / синатра актуальны:

E-MBP:test_app admin$ gem update rake
Updating installed gems
Nothing to update
E-MBP:test_app admin$ gem update shotgun
Updating installed gems
Nothing to update
E-MBP:test_app admin$ gem update sinatra
Updating installed gems
Nothing to update

1 ответ

Решение

Я столкнулся с той же ошибкой и нашел, добавив gem 'shotgun' к моему проекту Gemfile и в комплекте я смог обойти эту ошибку.

Другие вопросы по тегам