使用Ruby和Rails已经有一段时间了,我想尝试RVM。一切都很好,除了一件事:
在一个刚刚打开的终端ruby
指向系统的ruby,尽管我使用了rvm --default
命令。
user@terra ~ $ ruby -v
ruby 1.8.7 (2010-08-16 patchlevel 302) [i686-darwin10]
user@terra ~ $ which ruby
/opt/local/bin/ruby
user@terra ~ $ rvm list
ruby-1.8.7-p334 [ ]
=> ruby-1.9.2-p180 [ ]
致电rvm reload
user@terra ~ $ rvm reload
user@terra ~ $ ruby -v
ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-darwin10.7.1]
tmangner@terra ~ $ which ruby
/Users/user/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
我按照文档中的说明设置了.bash_profile
:
...
[[ -s "/Users/user/.rvm/scripts/rvm" ]] && source "/Users/user/.rvm/scripts/rvm"
感谢您的帮助。非常感谢。
我正在使用Mac OS X Snow Leopard(10.6.6)
更新
那--default
似乎不适合我...
user@terra ~ $ rvm use 1.9.2 --default
Using /Users/user/.rvm/gems/ruby-1.9.2-p180
user@terra ~ $ rvm default
user@terra ~ $
答案 0 :(得分:45)
我曾经遇到过同样的问题。原来rvm脚本加载了两次,这打破了一些东西。
检查打开shell时加载的所有文件,例如/etc/profile
,~/.bashrc
,~/.bash_profile
等等,并确保它们不会加载RVM两次。
可以在echo "Going to load RVM"
之前[[ -s "/Users/user/.rvm/scripts/rvm" ]] && source "/Users/user/.rvm/scripts/rvm"
放~/.bash_profile
以查看是否发生
答案 1 :(得分:17)
移动它:
[[ -s "/usr/local/rvm/scripts/rvm" ]] && . "/usr/local/rvm/scripts/rvm"
〜/ .bash_profile底部的解决了我的问题。
答案 2 :(得分:7)
ZSH用户的可能修复方法:
不知怎的,我有:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"
<。>在.zprofile和.zshrc中。
从.zprofile中删除该行解决了该问题。 (虽然你应该能够从任何一个中删除,只要它只出现一次)
答案 3 :(得分:6)
我遇到了同样的问题。
移动线:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function
从MacPorts出发后:
export PATH=/opt/local/bin:/opt/local/sbin:$PATH
为我解决了这个问题。
答案 4 :(得分:6)
你运行了命令吗? rvm使用--default 1.9.2?
这对我在openSUSE上有用,但我不知道雪豹。
答案 5 :(得分:5)
我遇到了同样的问题,因为我使用Oh-My-Zsh,如果我有重复的RVM调用,则跟踪起来有点困难。
我通过将调用RVM从位于\ oh-my-zsh内的\ custom文件夹中的单独rvm.zsh文件移动到我的主.zshrc文件的最末端来修复它。
看起来RVM对于在zsh初始化序列结束时不被调用非常敏感。
答案 6 :(得分:5)
而不是:
rvm use 1.9.2 --default
我使用完整版:
rvm use ruby-1.9.2-p290 --default
这在zsh中对我有用。
答案 7 :(得分:4)
完整性检查 - 确保您正在处理的项目具有与您尝试在.ruby-version文件中设置为默认值的ruby版本相同。
它发生在我身上,我无法弄清楚为什么rvm
不使用我的默认
答案 8 :(得分:2)
我在Mac OS X 10.7上遇到了同样的问题。
后来我发现我的帐户没有添加到“rvm”组。
我将自己添加到rvm组后,我可以设置-default of rvm。
答案 9 :(得分:1)
我的问题已通过更改解决:
我的PATH=/usr/local/bin
中的 PATH=$PATH:/usr/local/bin
到.zshrc
source @github RVM issue queue
显然,您需要确保首先正确安装RVM,然后运行@choise建议的type rvm | head -1
检查。 rvm use --default 1.9.3-p362
现在正常运作。
答案 10 :(得分:0)
尝试此操作为新shell设置默认ruby:
sudo rvm alias create default 1.9.2
答案 11 :(得分:0)
我必须从〜/ .bash_profile中删除[[ -s "/usr/local/rvm/scripts/rvm" ]] && . "/usr/local/rvm/scripts/rvm"
行,并且必须将它移到〜/ .bashrc的最底部。
这解决了OS X 10.10.1上的问题。
答案 12 :(得分:0)
我按照上面的建议 - 检查了我的bash_profile(这很好)并且还注意到在ubuntu中你可能需要领导https://rvm.io/support/faq/#shell_login的建议
但是我仍然遇到这个问题,直到我意识到我试图运行的项目有一个.rvmrc文件,该文件指定了我没有安装的ruby版本。当我纠正这个问题时 - 我停止了问题(所以实际上并不是使用默认设置不起作用,而是这个项目覆盖了它)
答案 13 :(得分:0)
对于Mac OS上的一些新手,请使用JewelryBox,在偏好设置部分中找到
"show default ruby in system menu bar"
检查这个允许你在红宝石之间切换。
您可以通过“system @ *”选择选择预先安装的rubygems(如果您有rubygems)。
答案 14 :(得分:0)
出于某种原因,我在我的$ HOME / bin目录中有ruby,gem,rake,...文件存根。以下是一个例子。因此我的rvm --default使用1.9.3没有按预期工作。删除$ HOME / bin目录解决了这个问题。
cat bin/ruby
#!/usr/bin/env bash
if [[ -s "/usr/local/rvm/environments/ruby-1.9.2-p290" ]]
then
source "/usr/local/rvm/environments/ruby-1.9.2-p290"
exec ruby "$@"
else
echo "ERROR: Missing RVM environment file: '/usr/local/rvm/environments/ruby-1.9.2-p290'" >&2
exit 1
fi
答案 15 :(得分:0)
答案 16 :(得分:0)
type rvm | head -1
打印出来的内容是什么?
在我的bash_profile中(在最新的osx上)我不得不放
# Ruby Version Manager
[[ -s "/usr/local/rvm/scripts/rvm" ]] && . "/usr/local/rvm/scripts/rvm"
我还创建了一个gemset并将其设置为默认值:
rvm reload
rvm install 1.9.2
rvm --create use 1.9.2@default
rvm --default use 1.9.2@default
答案 17 :(得分:0)
您需要将路径放在路径前面的rvm
$ export PATH=/path/to/rvm-dir:$PATH