我在Mac OS X上得到“RVM不是函数”错误,并且没有发布的解决方案

时间:2013-01-12 01:20:55

标签: ruby rvm

我使用的是Mac OS x 10.8.2(“Mountain Lion”),我成功安装了RVM 1.17.8及其依赖项。我可以使用它来使用rvm install 1.9.2来安装Ruby版本,但是如果没有收到此错误,我就无法执行rvm use <version>

RVM is not a function, selecting rubies with 'rvm use ...' will not work.

You need to change your terminal emulator preferences to allow login shell.
Sometimes it is required to use `/bin/bash --login` as the command.
Please visit https://rvm.io/integration/gnome-terminal/ for a example.

我在〜/ .bash_profile中有以下内容,我已设置使用source ~/.bash_profile运行,无论何时启动终端窗口:

export SVN_EDITOR=vim
PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting
[ -r ~/.bashrc ] && source ~/.bashrc

我已经尝试运行source ~/.rvm/scripts/rvm,它运行时没有返回错误,但当我尝试使用RVM在终端会话中设置Ruby版本时,我仍然得到“RVM不是函数”错误。

我还尝试使用rvm implode卸载并重新安装RVM。我的想法已经用完了,我似乎无法在网上找到更多的解决方案。帮助

3 个答案:

答案 0 :(得分:27)

确保您的shell初始化文件设置正确:

rvm get head --auto-dotfiles

然后转到终端模拟器首选项并启用登录shell ,有时需要使用/bin/bash --login。 另外,请确保完全关闭终端并在更改设置后将其打开。

答案 1 :(得分:14)

解决方案最终出现在RVM Help & Support页面上,“.bash_profile未加载到OSX上”部分。似乎问题是我将终端设置为使用“默认登录shell”打开,当我将其更改为在Preferences / Setup中使用命令“/ usr / bash”打开时,“source~ / .rvm / scripts / rvm“开始工作,rvm现在被识别为函数。

答案 2 :(得分:-2)

查找.profile,如果存在,请删除它! loof for .zshrc,如果存在,删除它!现在,使用vi编辑.bash_profile,添加此行

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"

现在,关闭所有控制台服务并再次打开,使用进行测试 $ rvm gemset use global

为我工作很好!