我无法说出这里发生了什么。我跑的时候:
ruby -v
我得到以下输出:
ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-darwin15]
然后当我尝试打开Rails控制台时:
rails console
我收到此错误:
Rails 5 requires Ruby 2.2.2 or newer.
You're running
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin16]
我运行的是2.4.0还是2.0.0?我如何才能让rails console
感到高兴+有效?!
输出几个命令:
which rails
/Users/myuser/.rvm/rubies/ruby-2.4.0/bin/rails
bundle exec rails console
Could not locate Gemfile or .bundle/ directory
type -all ruby
ruby is /Users/myuser/.rvm/rubies/ruby-2.4.0/bin/ruby
ruby is /usr/bin/ruby
rbenv local
-bash: rbenv: command not found
rvm -v
rvm 1.29.1 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io/]
答案 0 :(得分:2)
.rvm
输出中的which rails
:
/Users/myuser/.rvm/rubies/ruby-2.4.0/bin/rails
^^^^
表示您正在使用RVM来管理您的Ruby版本。如果你在shell中说rvm list
,你应该在可用的Rubies列表中看到2.4.0和2.0.0,当你输入Rails应用程序的目录时,该列表中的当前版本应该会改变。
检查Gemfile
,它应该说:
ruby '2.4.0'
或类似的,以确保它使用正确的版本。还要查找.ruby-version
文件,并确保它说的是正确的(如果存在)。
答案 1 :(得分:1)
如果您使用的是rbenv,则可以使用
更改特定项目的ruby版本rbenv local (ruby-version)
有关ruby版本的列表,您可以使用
rbenv install -l
找到一个关于使用rbenv更改ruby版本的迷你教程: https://makandracards.com/makandra/21545-rbenv-how-to-switch-to-another-ruby-version-temporarily-per-project-or-globally