Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby RVM不';t开关红宝石_Ruby_Rvm - Fatal编程技术网

Ruby RVM不';t开关红宝石

Ruby RVM不';t开关红宝石,ruby,rvm,Ruby,Rvm,我在CentOS上运行Ruby 1.9.1p243,我决定安装rvm以处理升级到1.9.2或降级到1.8.7的问题(以对rails3更有效的为准) 我按照这里的说明进行了操作:所有设备都安装正确。我能够编译并安装Ruby 1.8.7、1.9.1和1.9.2 但是,如果我尝试实际切换到一个安装了rvm的Rubies,例如,使用rvm 1.8.7,则没有任何效果。我的系统仍然使用安装在/usr/local/bin/Ruby中的Ruby 我得到的输出示例如下: $ rvm use 1.8.7 $ ru

我在CentOS上运行Ruby 1.9.1p243,我决定安装rvm以处理升级到1.9.2或降级到1.8.7的问题(以对rails3更有效的为准)

我按照这里的说明进行了操作:所有设备都安装正确。我能够编译并安装Ruby 1.8.7、1.9.1和1.9.2

但是,如果我尝试实际切换到一个安装了rvm的Rubies,例如,使用rvm 1.8.7,则没有任何效果。我的系统仍然使用安装在/usr/local/bin/Ruby中的Ruby

我得到的输出示例如下:

$ rvm use 1.8.7
$ ruby -v
ruby 1.9.1p243 (2009-07-16 revision 24175) [i686-linux]
$ which ruby
/usr/local/bin/ruby
$ rvm use 1.9.2
$ ruby -v
ruby 1.9.1p243 (2009-07-16 revision 24175) [i686-linux]
$ which ruby
/usr/local/bin/ruby

我不知道为什么会发生这种情况,而且我似乎也无法在网上找到关于这个问题的任何信息。任何帮助都将不胜感激。

通常通过IRC(freenode上的rvm)最容易获得rvm支持-在这种特殊情况下,运行“类型rvm头-n1”显示了什么?它应该显示“rvm是一个函数”。如果不是,则表示到源rvm的线路未正确运行,因此切换不起作用。通常这意味着您的~/.bashrc中有一个返回,或者您没有将该行添加到源rvm。

您的安装是作为root帐户进行的。 试试这个贝壳 [[-s”/usr/local/rvm/scripts/rvm“]]&&。“/usr/local/rvm/scripts/rvm”


rvm开关操作前。我把这一行添加到我的个人资料文件中,现在一切都好了

遇到了同样的问题

不要将以下脚本附加到~/.bash\u profile,而是将其附加到~/.bashrc

[[-s“$HOME/.rvm/scripts/rvm”]&&。“$HOME/.rvm/scripts/rvm”#这会将rvm加载到shell会话中。


然后重新启动终端。

可能是终端和 您应该尝试关闭终端的窗口 并打开一个新的。:)
请再试一次,看看它是否已更改…

我一直在努力将默认rvm ruby设置为无效,直到我尝试了以下方法:

sudo bash -l -c 'rvm alias create default ruby-1.9.3-p392'
sudo”用于写入/usr/local/rvm/config/alias(在我的示例中,它将包含“default=ruby-1.9.3-p392”)

bash-l”是为了确保它运行登录shell的所有脚本(/etc/profile、/etc/bash.bashrc等)

您是否在.bashrc中设置了脚本?这可能就是您缺少的。如果您是说,我是否将[[-s“$HOME/.rvm/scripts/rvm”]]和&source“$HOME/.rvm/scripts/rvm”添加到了我的.bashrc中,那么是的,我添加了。在my.bashrc中没有像安装说明警告那样“返回”任何内容。该命令会显示“rvm is/usr/local/bin/rvm”而不是“rvm is a function”,但是,my.bashrc文件似乎按照安装指南正确设置。不过我会检查irc频道,谢谢。我的.bashrc有问题;因为我是root用户,所以它安装在与说明中所说的不同的位置,我必须更改源代码行以反映这一点。您能告诉我们您在bashrc文件中更改了什么吗?Lichtamberg:当它是root用户时,你从/usr/local/rvm/scripts/rvm而不是$HOME/.rvm/scripts/rvm获取源代码-只需更改源代码行以匹配Evan所做的事情。Sutto:这正是我所做的。将其放入~/.bashrc并重新加载shell也为我解决了问题。@Shuo你能更新该链接或删除帖子吗,它去了一个关于b12的德国网站。。。我不确定那是你想要的。