Ruby on rails Eventmachine启动\u tcp\u服务器无接受器-端口正在使用或需要根权限(RuntimeError)
我已经三天没能运行本地服务器了。重新启动我的电脑没有帮助。有几次,在反复尝试大约40-50次后,它随机起作用了——我不知道为什么。我曾经尝试过一个不同的端口,但效果很好,但从那时起,没有一个端口可以工作。每次我尝试运行rails服务器时,我都会得到这样的结果Ruby on rails Eventmachine启动\u tcp\u服务器无接受器-端口正在使用或需要根权限(RuntimeError),ruby-on-rails,git,ruby-on-rails-4,localhost,eventmachine,Ruby On Rails,Git,Ruby On Rails 4,Localhost,Eventmachine,我已经三天没能运行本地服务器了。重新启动我的电脑没有帮助。有几次,在反复尝试大约40-50次后,它随机起作用了——我不知道为什么。我曾经尝试过一个不同的端口,但效果很好,但从那时起,没有一个端口可以工作。每次我尝试运行rails服务器时,我都会得到这样的结果 /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/eventmachine-1.0.5/lib/eventmachine.rb:526:in `start_tcp_server': no acceptor
/Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/eventmachine-1.0.5/lib/eventmachine.rb:526:in `start_tcp_server': no acceptor (port is in use or requires root privileges) (RuntimeError)
from /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/eventmachine-1.0.5/lib/eventmachine.rb:526:in `start_server'
from /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/thin-1.5.1/lib/thin/backends/tcp_server.rb:16:in `connect'
from /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/thin-1.5.1/lib/thin/backends/base.rb:55:in `block in start'
from /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/eventmachine-1.0.5/lib/eventmachine.rb:187:in `call'
from /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/eventmachine-1.0.5/lib/eventmachine.rb:187:in `run_machine'
from /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/eventmachine-1.0.5/lib/eventmachine.rb:187:in `run'
from /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/thin-1.5.1/lib/thin/backends/base.rb:63:in `start'
from /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/thin-1.5.1/lib/thin/server.rb:159:in `start'
from /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/rack-1.6.1/lib/rack/handler/thin.rb:19:in `run'
from /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/rack-1.6.1/lib/rack/server.rb:286:in `start'
from /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/railties-4.2.0/lib/rails/commands/server.rb:80:in `start'
from /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:80:in `block in server'
from /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:75:in `tap'
from /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:75:in `server'
from /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
from /Users/colmtuite/.rvm/gems/ruby-2.2.0/gems/railties-4.2.0/lib/rails/commands.rb:17:in `<top (required)>'
from bin/rails:4:in `require'
from bin/rails:4:in `<main>'
当我运行ps aux | grep ruby
时,我得到以下输出:
colmtuite 6422 0.0 0.0 2441988 668 s002 S+ 2:44am 0:00.00 grep rails
colmtuite 13305 0.0 0.0 2423356 200 s000 R+ 8:15pm 0:00.00 grep ruby
我的端口是因为某种原因关闭的吗?我也有同样的问题 这对我有用
$ ps ax | grep rails
然后使用进程id终止进程
$ kill -9 [process Id]
范例
$ kill -9 20496
再次启动服务器如果运行sudosudo,会发生什么?您是说运行“sudo ps aux | grep rails”吗?我得到这个输出:colmtuite 17258 0.0 0 0.0 2450180 672 s000 S+1:53am 0:00.00 grep rails for'sudo ps aux | grep ruby'我得到这个输出:colmtuite 17286 0.0 0 0.0 2441988 676 s000 S+1:55am 0:00.00 grep rubyNo,我想尝试使用
sudo
命令运行本地服务器:),然后您就会知道问题是否与根权限或正在使用的端口有关。我得到以下输出: