Mac对于安装了哪个版本的Ruby感到困惑

问题描述 投票:0回答:2

我不知道这里发生了什么。当我跑:

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快乐+有效?!


Update

输出几个命令:

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/]
ruby-on-rails ruby macos
2个回答
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
投票

如果您使用的是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

© www.soinside.com 2019 - 2024. All rights reserved.