merb -iを実行するためにはMongrelを使う必要がある
merb -iは、
Merb-1.0におけるscript/console的な対話型インターフェイスを提供するコマンドですが、
アダプターとしてThinを使っていると、エラーが発生してうまく使えないようです。
pre>>
% merb -i
(snip)
~ Connecting to database...
~ Loaded slice 'MerbAuthSlicePassword' ...
~ Parent pid: 29906
~ Compiling routes...
~ Activating slice 'MerbAuthSlicePassword' ...
merb : worker (port 4000) ~ Starting Thin at port 4000
merb : worker (port 4000) ~ Using Thin adapter on host 0.0.0.0 and port 4000.
merb : worker (port 4000) ~ Successfully bound to port 4000
/opt/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.2/lib/eventmachine.rb:531:in
`start_tcp_server': no acceptor (RuntimeError)
<<--
mongrelとwebratをインストールし、adapterとしてMongrelを使うようにすると、merb -iでエラーが出なくなりました。
pre>>
% merb -i
(snip)
~ Connecting to database...
~ Loaded slice 'MerbAuthSlicePassword' ...
~ Parent pid: 29931
~ Compiling routes...
~ Activating slice 'MerbAuthSlicePassword' ...
irb: warn: can't alias context from irb_context.
irb(main):001:0>
<<--
Merbの名称はMongrel+ERBから来てるみたいだけど、
とりあえずはしばらくMongrelを使っておくのが無難かもですね。
少なくとも開発環境では。