提问者:小点点

Ruby on Rails控制台在加载时挂起


无论出于什么原因,Ruby on Rails控制台都拒绝启动;只是挂起来了。我没有对代码做任何更改,其他使用相同版本的Ruby和Ruby on Rails的项目也没有问题。当我最后Ctrl+C时,我得到了这个指向spring的堆栈跟踪。

我无法解释为什么这会发生在一个时刻到下一个时刻,在那里它是工作良好的。我已经清除了所有的宝石通过RVM和重新安装所有通过捆绑命令,但仍然没有运气。任何想法都将不胜感激。

而且,据我所知,Ruby on Rails服务器也没有问题。这个问题与项目有关,但是没有任何代码发生变化,只有Ruby on Rails控制台有这个问题。

Ruby 2.1.2
Rails 4.1.4

user_a@ubuntu:~/work/app_a$ rails console
^C/home/user_a/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/lib/spring/client/run.rb:54:in `gets': Interrupt
    from /home/user_a/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/lib/spring/client/run.rb:54:in `verify_server_version'
    from /home/user_a/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/lib/spring/client/run.rb:25:in `call'
    from /home/user_a/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/lib/spring/client/command.rb:7:in `call'
    from /home/user_a/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/lib/spring/client/rails.rb:23:in `call'
    from /home/user_a/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/lib/spring/client/command.rb:7:in `call'
    from /home/user_a/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/lib/spring/client.rb:26:in `run'
    from /home/user_a/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/bin/spring:48:in `<top (required)>'
    from /home/user_a/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/lib/spring/binstub.rb:11:in `load'
    from /home/user_a/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/lib/spring/binstub.rb:11:in `<top (required)>'
    from /home/user_a/work/app_a/bin/spring:16:in `require'
    from /home/user_a/work/app_a/bin/spring:16:in `<top (required)>'
    from bin/rails:3:in `load'
    from bin/rails:3:in `<main>'

user_a@ubuntu:~/work/app_a$

共1个答案

匿名用户

重新启动spring应该修复挂起的命令:

$ bin/spring stop

在删除并重新创建一个新的Ruby on Rails应用程序之后,我体验了挂起命令(rake、bin/Rails等)的体验。谷歌没有那么大的帮助。我希望这是。

当您重新运行命令时,spring将自动启动。