2009-08-29 334 views
2

我知道mongrel是“脚本/服务器”的默认服务器,但是当我执行该命令时,我得到了webrick。 (我之前和混血儿一起工作过)。现在当我说的是使用杂种(“脚本/服务器杂种”)时,服务器无法在终端中启动。我得到这个:Ruby on rails:启动杂服服务器

$ script/server mongrel 
^C/Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel/gems.rb:11:in `require': Interrupt 
    from /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:17 
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `gem_original_require' 
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `require' 
    from /Library/Ruby/Gems/1.8/gems/activesupport-2.3.3/lib/active_support/dependencies.rb:156:in `require' 
    from /Library/Ruby/Gems/1.8/gems/activesupport-2.3.3/lib/active_support/dependencies.rb:521:in `new_constants_in' 
    from /Library/Ruby/Gems/1.8/gems/activesupport-2.3.3/lib/active_support/dependencies.rb:156:in `require' 
    from /Library/Ruby/Gems/1.8/gems/rack-1.0.0/lib/rack/handler/mongrel.rb:1 
    from /Library/Ruby/Gems/1.8/gems/rack-1.0.0/lib/rack/handler.rb:17:in `const_get' 
    from /Library/Ruby/Gems/1.8/gems/rack-1.0.0/lib/rack/handler.rb:17:in `get' 
    from /Library/Ruby/Gems/1.8/gems/rack-1.0.0/lib/rack/handler.rb:17:in `each' 
    from /Library/Ruby/Gems/1.8/gems/rack-1.0.0/lib/rack/handler.rb:17:in `get' 
    from /Users/devinross14/.gem/ruby/1.8/gems/rails-2.3.3/lib/commands/server.rb:45 
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require' 
    from script/server:3 

我刚刚升级到雪豹是否有帮助?

回答

6

它花了一段时间,但我终于得到了杂草(1.1.5)在雪豹工作。这很容易做到:

sudo gem uninstall mongrel 
sudo gem uninstall fastthread 
sudo gem install mongrel 

似乎fastthread也需要重新编译以及。

4

我设法让它在没有从源代码安装mongrel的情况下工作。我所要做的只是重新安装宝石。

或者您可以使用薄,这是一个杂种的选择:

sudo gem install thin 
thin start 

这可能让你在此期间去而雪豹尘埃落定。

+0

真棒小费 - 谢谢! – Jarsen 2009-08-29 21:55:09

0

我发现重新安装所有的宝石似乎已经解决了我的问题。通过按照此链接的终端命令善:http://geekystuff.net/2009/1/14/remove-all-ruby-gems

更换所有的卸载虽与安装命令命令:

gem list | cut -d" " -f1 | xargs sudo gem install 

请记住这个安装最新的一切,所以如果你有一个特定版本你需要那么你可能需要相应地调整一些东西。

0

与开发者服务器没有戏剧最简单的方法是使用nginx或apache的乘客。然后,您可以真正轻松地在开发模式下运行几个应用程序,而不必在命令行上搞乱,看看哪些正在运行。

0

的第一个评论是不坏,但它为我工作:

$ sudo gem uninstall mongrel 
$ sudo gem uninstall fastthread 
$ sudo gem install mongrel 
$ sudo gem install fastthread 

删除所有宝石都被恢复。

似乎OS X复制的宝石,同时更新,无论是在列表的两倍...

2

要启动杂种服务器的命令是 轨服务器杂种。 启动在网络上闪动的杂种服务器的命令不起作用