Sca*_*arn -1 ruby-on-rails localhost server
我一直在尝试使用命令Rails服务器运行我的Rails应用程序,但是最近出现了此错误:
Macs-MacBook-Pro:jobsboard mac $ rails服务器=>正在引导Puma =>正在http:// localhost:3000上开发中启动的Rails 5.0.0.1应用程序 =>运行
rails server -h更多启动选项Puma以单模式启动... *版本3.6.0(红宝石2.3.0-p0),代号:Sleepy Sunday Serenity *最小线程数:5,最大线程数:5 *环境:开发中*正在监听tcp:// localhost:3000退出/Users/mac/.rvm/ gems / ruby-2.3.0 / gems / puma-3.6.0 / lib / puma / binder.rb:266:ininitialize': Address already in use - bind(2) for "::1" port 3000 (Errno::EADDRINUSE) from /Users/mac/.rvm/gems/ruby-2.3.0/gems/puma-3.6.0/lib/puma/binder.rb:266:innew'from /Users/mac/.rvm/gems/ruby-2.3.0/gems/puma- 3.6.0 / lib / puma / binder.rb:266:add_tcp_listener' from /Users/mac/.rvm/gems/ruby-2.3.0/gems/puma-3.6.0/lib/puma/binder.rb:260:in在/Users/mac/.rvm/gems/ruby-2.3.0/gems/puma-3.6.0/lib/puma/binder的add_tcp_listener中。 rb:259:ineach' from /Users/mac/.rvm/gems/ruby-2.3.0/gems/puma-3.6.0/lib/puma/binder.rb:259:in/Users/mac/.rvm/gems/ruby-2.3.0/gems/puma-3.6.0/lib/puma/binder.rb中的add_tcp_listener':102:block in parse' from /Users/mac/.rvm/gems/ruby-2.3.0/gems/puma-3.6.0/lib/puma/binder.rb:85:in分别位于/Users/mac/.rvm/gems中/ruby-2.3.0/gems/puma-3.6.0/lib/puma/binder.rb:85:inparse' from /Users/mac/.rvm/gems/ruby-2.3.0/gems/puma-3.6.0/lib/puma/runner.rb:133:inload_and_bind'from /Users/mac/.rvm/gems/ruby-2.3.0/gems/puma-3.6 .0 / lib / puma / single.rb:85:run' from /Users/mac/.rvm/gems/ruby-2.3.0/gems/puma-3.6.0/lib/puma/launcher.rb:172:in运行中/Users/mac/.rvm/gems/ruby-2.3.0/gems/puma-3.6.0/lib/rack/handler/puma.rb :51:inrun' from /Users/mac/.rvm/gems/ruby-2.3.0/gems/rack-2.0.1/lib/rack/server.rb:296:in开始于 '/Users/mac/.rvm/gems/ruby-2.3.0/gems/railties-5.0.0.1/lib/rails/commands/server.rb:79:in开始start' from /Users/mac/.rvm/gems/ruby-2.3.0/gems/railties-5.0.0.1/lib/rails/commands/commands_tasks.rb:90:in于/用户/mac/.rvm/gems/ruby-2.3.0/gems/railties-5.0.0.1/lib/rails/commands/commands_tasks.rb:85:tap' from /Users/mac/.rvm/gems/ruby-2.3.0/gems/railties-5.0.0.1/lib/rails/commands/commands_tasks.rb:85:in服务器中的/Users/mac/.rvm/gems/ruby -2.3.0 / gems / railties-5.0.0.1 / lib / rails / commands / commands_tasks.rb:49:inrun_command!' from /Users/mac/.rvm/gems/ruby-2.3.0/gems/railties-5.0.0.1/lib/rails/commands.rb:18:in'来自/ Users / mac / Documents / Projects / Web Development / Ruby On Rails / Jobs Board / jobsboard / bin / rails:9:inrequire' from /Users/mac/Documents/Projects/Web Development/Ruby On Rails/Jobs Board/jobsboard/bin/rails:9:in来自'/Users/mac/.rvm/gems/ruby-2.3.0/gems/ spring-1.7.2 / lib / spring / client / rails.rb:28:load' from /Users/mac/.rvm/gems/ruby-2.3.0/gems/spring-1.7.2/lib/spring/client/rails.rb:28:in来自/Users/mac/.rvm/gems/ruby-2.3.0/gems/spring-1.7.2/lib/spring/call' from /Users/mac/.rvm/gems/ruby-2.3.0/gems/spring-1.7.2/lib/spring/client.rb:30:in从/Users/mac/.rvm/gems/ruby-2.3.0/gems/spring-1.7.2/bin/spring:49:in<top (required)>' from /Users/mac/.rvm/gems/ruby-2.3.0/gems/spring-1.7.2/lib/spring/binstub.rb:11:in加载中的client / command.rb:7:在 运行中 /.rvm/gems/ruby-2.3.0/gems/spring-1.7.2/lib/spring/binstub.rb:11:in<top (required)>' from /Users/mac/Documents/Projects/Web Development/Ruby On Rails/Jobs Board/jobsboard/bin/spring:13:inrequire'来自/ Users / mac / Documents / Projects / Web Development / Ruby On Rails / Jobs Board / jobsboard / bin / spring:13:in load'from<top (required)>' from bin/rails:3:inbin / rails:3:in` '
我可以通过指定其他端口来解决此问题,即使用命令“
导轨服务器-p 4000
”,但我想使用以前的部署方式。我该如何解决?
附言:我是Rails的新手,请简单说明。:p非常感谢你们!谢谢!
加成:
上次登录时间:ttys000 Macs-MacBook-Pro上的Thu Sep 15 13:55:52:Ruby On Rails mac $ ps aux | grep rails mac 1040 0.0 0.0 0.0 2445080 800 s003 S + 2:02 PM 0:00.00 grep rails mac
1020 0.0 0.0 0.0 2471272 3052 s000 S + 2:02 PM 0:00.01 /Users/mac/.rvm/gems/ruby-2.3.0/gems/ rb-fsevent-0.9.7 / bin / fsevent_watch --latency 0.1 /Users/mac/.rvm/gems/ruby-2.3.0/gems/jquery-rails-4.2.1 mac 1019 0.0 0.0 2462056 3032 s000 S + 2: 02PM
0:00.01 /Users/mac/.rvm/gems/ruby-2.3.0/gems/rb-fsevent-0.9.7/bin/fsevent_watch-延迟0.1 /Users/mac/.rvm/gems/ruby-2.3 .0 / gems / coffee-rails-4.2.1 Macs-MacBook-Pro:Ruby On Rails mac $
这意味着3000端口不是空闲的。您的项目的另一个实例已经在使用它。因此,通过以下命令找到该进程:
lsof -i :3000
Run Code Online (Sandbox Code Playgroud)
并通过以下方法终止该过程:
kill -9 processid
Run Code Online (Sandbox Code Playgroud)
您还可以从应用程序的temp文件夹中删除进程ID。
或者,您可以通过以下命令在其他端口上启动应用程序rails s -p 3001
| 归档时间: |
|
| 查看次数: |
910 次 |
| 最近记录: |