通过 RVM 将 ruby 2.2.2 升级到 2.2.3 后,rake db:migrate 不起作用 [英] rake db:migrate doesn't work after ruby 2.2.2 to 2.2.3 upgrade via RVM
问题描述
我最近使用 RVM 从 Ruby 2.2.2 升级到 2.2.3.这在我的开发环境中搞砸了一些事情,但由于有用的错误消息,到目前为止我可以处理它.
I recently upgraded from Ruby 2.2.2 to 2.2.3 using RVM. This messed up some things in my development environment but I could handle it so far thanks to useful error messages.
现在我想向我的数据库添加一些迁移并遇到此错误:
Now I wanted to add some migrations to my DB and encountered this error:
$ rake db:migrate
/Users/howard/.rvm/gems/ruby-2.2.3/bin/ruby_executable_hooks:15:in `eval': /Users/howard/.rvm/rubies/ruby-2.2.3/bin/rake:4: syntax error, unexpected tSTRING_BEG, expecting keyword_do or '{' or '(' (SyntaxError)
exec "$bindir/ruby" -x "$0" "$@"
^
from /Users/howard/.rvm/gems/ruby-2.2.3/bin/ruby_executable_hooks:15:in `<main>'
非常感谢任何帮助.
我认为 RVM 可以防止此类事情发生?
I thought RVM prevents stuff like this from happening?
我使用最新版本的 OS X、Ruby 和 Rails.
I use the latest versions of OS X, Ruby and Rails.
非常感谢!
推荐答案
我今天遇到了同样的问题,并使用以下命令解决了它:
I had the same issue today and resolved it with the following commands:
rvm 卸载 2.2.3
rvm uninstall 2.2.3
rvm 安装 2.2.3
rvm install 2.2.3
rvm 使用 2.2.3 --default
rvm use 2.2.3 --default
gem 安装包
捆绑安装
您可能还想在运行最后两个之前选择一个 gemset:
You may also want to select a gemset before you run the last two with:
rvm gemset 创建 your_gemset_name
rvm gemset create your_gemset_name
rvm 使用 2.2.3@your_gemset_name
rvm use 2.2.3@your_gemset_name
无论出于何种原因,重新安装似乎解决了所有问题
For whatever reason, the reinstall seemed to fix everything
这篇关于通过 RVM 将 ruby 2.2.2 升级到 2.2.3 后,rake db:migrate 不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!