当我跑步的时候 ruby脚本/服务器webrick -e production
它给出了错误
=>启动WEBrick
=> Rails 2.3.5应用程序从http://0.0.0.0:3000开始
/usr/lib64/ruby/gems/1.8/gems/rails-2.3.5/lib/rails/gem_dependency.rb:119:Warning:Gem :: Dependency#version_requirements已弃用,将于2010年8月或之后删除。使用#需求
=>用-d调用分离
=> Ctrl-C关闭服务器
[2010-10-16 11:37:00] INFO WEBrick 1.3.1
[2010-10-16 11:37:00] INFO ruby 1.8.6(2010-02-05)[x86_64-linux]
[2010-10-16 11:37:00] WARN TCPServer错误:地址已在使用中 - bind(2)
退出
/usr/lib/ruby/1.8/webrick/utils.rb:73:in initialize': Address already in use - bind(2) (Errno::EADDRINUSE)
from /usr/lib/ruby/1.8/webrick/utils.rb:73:in
new'
来自/usr/lib/ruby/1.8/webrick/utils.rb:73:in create_listeners'
from /usr/lib/ruby/1.8/webrick/utils.rb:70:in
每个'
来自/usr/lib/ruby/1.8/webrick/utils.rb:70:in create_listeners'
from /usr/lib/ruby/1.8/webrick/server.rb:75:in
listen'
来自/usr/lib/ruby/1.8/webrick/server.rb:63:in initialize'
from /usr/lib/ruby/1.8/webrick/httpserver.rb:24:in
initialize'
来自/usr/lib64/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/handler/webrick.rb:10:in new'
from /usr/lib64/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/handler/webrick.rb:10:in
run'
来自/usr/lib64/ruby/gems/1.8/gems/rails-2.3.5/lib/commands/server.rb:111
来自/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in gem_original_require'
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in
require'
来自脚本/服务器:3
使用ruby 1.8.6(2010-02-05 patchlevel 399)[x86_64-linux] Rails 2.3.5 gem --version 1.3.7
试图 gem update --system gem install rubygems-update update_rubygems
仍然出现错误
我也做到了这一点 gem install -v = 2.3.8 rails
仍然出现错误
答案 0 :(得分:0)
听起来你已经有一个已经在TCP / 3000上监听的rails服务器(或其他东西)了。您需要停止其他服务器或在另一个端口上启动此服务器:
$ ruby script/server webrick -e production -p 3001
答案 1 :(得分:0)
它偶尔会起作用。当我重新开始重做时,它不起作用。为什么呢?
当我将端口更改为3001时,它可以工作,但是当我重新启动redmine时,它会出现同样的错误。
我试图做的时候
rake gems:install
它给出了 (在/ var / www / html / redmine中) 耙子流产了! 用户'root'@'localhost'拒绝访问(使用密码:NO)
(通过使用--trace运行任务查看完整跟踪)
答案 2 :(得分:0)
如果确保停止未使用的webrick实例,则可以消除此问题。确保你永远不会使一个webrick实例死亡或背景,因为这使得在不杀死进程的情况下很难停止。一个好的规则是让终端会话专门用于启动和停止webrick,这样你就不会忘记webrick实例。