全栈工程师成长记

编程重新定义人生

用spring stop解决rails g/c/s 无法运行的情况

在专案中执行rails g/c/s 之类的指令时,命令行会卡住不动且没有任何提示。

解决的办法是:

新开一个终端机窗口,进入到你的专案目录,运行spring stop, 然后会提示Sprig stopped。

这时回到之前的窗口,卡住的命令行会自动结束,然后就可以重新运行你需要的rails指令了。

update 2016-07-28:刚刚在运行bundle install的时候命令行也是卡住不动,切换sourece到taobao也没有见效,然后spring stop一下就又可以bundle install了。
--------------------------------
以上是上周三写在wiki里的记录,今天遇到一个更奇葩的错误:
在新专案 jdstore 里运行 rails s 的时候命令行不是卡住不动动,而是报错,按照它的错误提示是它会去查找之前被我作废了之后重命名为jdstore-old的专案里的数据。
因为它不是卡住不动,所以就没有想过要用spring stop来解决。这其中可能是什么地方关联错误,然后我把jdstore删除,把jdstore-old删除,把github上面的jdstore项目也删除。
然后重新fork项目过来重新clone,然而在最最新的jdstore里面运行rails g的时候报错一摸一样,它还是会提到那个jdstore-old,最后YY老师过来帮忙google解决的问题。
其实还是spring这个组件引起的,
一、用ps ax | grep spring查看spring的状态
可以看到有其中一行指向了jdstore-old,


二、执行spring stop,解决问题

当然也可以不查看状态,直接spring stop。