Sinatra and Ruby 1.9.2 on Shotgun で LoadError
環境:
ruby 1.9.2p0 sinatra (1.1.0, 1.0) shotgun (0.8)
1.9.1 では以下設定で問題なく Shotgun が起動していた。
config.ru
require 'app' run Sinatra::Application
app.rb
require 'sinatra' get '/' do 'hello' end
Shotgun 起動
shotgun -o 0.0.0.0 -p 4567
しかし 1.9.2 では Shotgun 起動時 LoadError が発生した。
Boot Error Something went wrong while loading app.rb LoadError: no such file to load -- app.rb
以下のように変更したところ問題なく Shotgun が起動するようになった。
config.ru
require File.expand_path(File.dirname(__FILE__)) + '/app' run Sinatra::Application
Shotgun 起動
shotgun -o 0.0.0.0 -p 4567
refs:
http://stackoverflow.com/questions/4346981/issues-with-sinatra-and-ruby-1-9-2-on-shotgun
http://d.hatena.ne.jp/deeeki/20101120/sinatra_ruby19_passenger
http://d.hatena.ne.jp/nagachika/20101106/rack_on_heroku
- -
追記
Sinatra アプリを Heroku の Platform Stack: bamboo-mri-1.9.2 で動かそうとした場合も同様に LoadError が発生した(bamboo-mri-1.9.1 では発生せず)
no such file to load -- app (LoadError)
上記のように require の書き方を修正したところ動いた。