STUDY MEMO

学習のメモ書き

<Ruby on Rails エラー編> rails consoleが起動できない

発生したエラー

rails consoleを実行すると、以下のエラーが発生した。

Traceback (most recent call last):
        17: from bin/rails:2:in `<main>'
        16: from bin/rails:2:in `load'
        15: from /Users/user_name/workspace/runteq/PF/kinoko2/bin/spring:7:in `<top (required)>'
        14: from /Users/user_name/workspace/runteq/PF/kinoko2/bin/spring:7:in `tap'
        13: from /Users/user_name/workspace/runteq/PF/kinoko2/bin/spring:10:in `block in <top (required)>'
        12: from /Users/user_name/workspace/runteq/PF/kinoko2/bin/spring:10:in `require'
        11: from /Users/user_name/workspace/runteq/PF/kinoko2/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/binstub.rb:11:in `<top (required)>'
        10: from /Users/user_name/workspace/runteq/PF/kinoko2/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/binstub.rb:11:in `load'
         9: from /Users/user_name/workspace/runteq/PF/kinoko2/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/bin/spring:49:in `<top (required)>'
         8: from /Users/user_name/workspace/runteq/PF/kinoko2/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client.rb:30:in `run'
         7: from /Users/user_name/workspace/runteq/PF/kinoko2/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client/command.rb:7:in `call'
         6: from /Users/user_name/workspace/runteq/PF/kinoko2/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client/rails.rb:24:in `call'
         5: from /Users/user_name/workspace/runteq/PF/kinoko2/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client/command.rb:7:in `call'
         4: from /Users/user_name/workspace/runteq/PF/kinoko2/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client/run.rb:35:in `call'
         3: from /Users/user_name/workspace/runteq/PF/kinoko2/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client/run.rb:42:in `warm_run'
         2: from /Users/user_name/workspace/runteq/PF/kinoko2/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client/run.rb:62:in `run'
         1: from /Users/user_name/workspace/runteq/PF/kinoko2/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client/run.rb:117:in `verify_server_version'
/Users/user_name/workspace/runteq/PF/kinoko2/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client/run.rb:117:in `gets': Interrupt

対処

デフォルトでセットされているSpringは、アプリケーションをバックグラウンドで動作させることで、開発を高速化するgem。
見たところspringが動いているので、プロセスを確認。

$ ps aux | grep -i spring
user_name            5264   0.0  0.0  4387048   2056   ??  S     4:11PM   0:01.33 spring server | kinoko2 | started 11 hours ago   
user_name           32697   0.0  0.0  4279688    764 s002  S+    4:50AM   0:00.01 grep --color=auto --exclude-dir=.bzr --exclude-dir=CVS --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svn --exclude-dir=.idea --exclude-dir=.tox -i spring

springをkillする。

$ kill -9 5264 

rails consoleを実行したところ、動いた。

参考文献

railsのコマンドが動かない時はspringを(stop|kill)してみよう - Qiita