我一直在尝试在我的Macbook Pro上安装Ruby-2.6.1几天,我已经关注了很多帖子和博客文章,试图让设置正确,但我没有成功。尝试使用RVM设置默认Ruby时,我总是得到以下内容:
picklemac:~ jblanchard$ rvm use default ruby-2.6.1
RVM不是一个函数,用'rvm use ...'选择rubies是行不通的。
您需要更改终端模拟器首选项以允许登录shell。有时需要使用
/bin/bash --login
作为命令。请访问https://rvm.io/integration/gnome-terminal/为例。
我已经按照链接,但没有成功。我将iTerm2设置为登录shell:
在.bashrc中我有以下内容:
# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
export PATH="$PATH:$HOME/.rvm/bin"
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"
在.bash_profile中我有以下内容:
# rvm
# export PATH="/Users/jblanchard/.rvm/bin:$PATH"
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"
正如我所说,我已经阅读并尝试了许多方法来正确设置iTerm2和我的Mac,包括How to make zsh run as a login shell on Mac OS X (in iTerm)?。另外,因为我试图从Ruby 2.3升级,所以我已经阅读了很多关于如何做到这一点的帖子 - 再次没有成功。
我究竟做错了什么?
我能够使用rvm list
成功列出安装:
picklemac:~ jblanchard$ rvm list
ruby-2.6.0 [ x86_64 ]
=* ruby-2.6.1 [ x86_64 ]
# => - current
# =* - current && default
# * - default
这很有趣,因为RVM表示Ruby-2.6.1是默认值,但是当我使用ruby -v
时,返回值为:
ruby 2.3.7p456(2018-03-28修订版63024)[universal.x86_64-darwin17]
我能够成功地对Ruby-2.6.1进行更改。首先,我在.bash_profile中取消注释export
行:
# rvm
export PATH="/Users/jblanchard/.rvm/bin:$PATH" #UNCOMMENTED
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"
停止并启动iTerm2后,我发出命令使用Ruby-2.6.1并收到警告,但随后:
picklemac:~ jblanchard$ rvm use default ruby-2.6.1
Warning! PATH is not properly set up, /Users/jblanchard/.rvm/gems/ruby-2.6.1/bin is not at first place.
Usually this is caused by shell initialization files. Search for PATH=... entries.
You can also re-add RVM to your profile by running: rvm get stable --auto-dotfiles
To fix it temporarily in this shell session run: rvm use ruby-2.6.1
To ignore this error add rvm_silence_path_mismatch_check_flag=1 to your ~/.rvmrc file.
Using /Users/jblanchard/.rvm/gems/ruby-2.6.1
对Ruby-2.6.1进行了更改。看来我确实需要运行rvm get stable --auto-dotfiles
来修复警告,我宁愿对它进行静音。现在,当运行ruby -v
时,返回的是:
ruby 2.6.1p33(2019-01-30修订版66950)[x86_64-darwin17]