【问题标题】:i installed ruby 1.9.2 with RVM, but when i type "ruby -v" is telling me the ruby v i have is 1.8.7 (mac)我用 RVM 安装了 ruby​​ 1.9.2,但是当我输入“ruby -v”时告诉我我拥有的 ruby​​ v 是 1.8.7 (mac)
【发布时间】:2011-02-08 20:17:18
【问题描述】:

当我在 Treminal 的“rvm 列表”中写入时,我得到了这个:

rvm rubies

   ruby-1.9.1-p378 [ x86_64 ]
   ruby-1.9.2-p136 [ x86_64 ]

但是当我输入“ruby -v”时,我得到了这个:

ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]

我该怎么办?

【问题讨论】:

    标签: ruby macos rvm


    【解决方案1】:

    你试过rvm use 1.9.2吗?安装 rubies 不会使它们成为 ruby​​ 的可执行版本。如果您告诉 RVM,RVM 只会使 ruby 成为 1.9.2 版本,使用 rvm use 1.9.2rvm use 1.9.1

    如果您希望 rvm 默认使用 1.9.2,请使用 rvm --default use 1.9.2

    【讨论】:

    • 他的RVM list命令的结果表明ruby 1.8.7不在RVM管理下。
    • @Jordan 是的,OS X 通常就是这种情况,因为它捆绑了 ruby​​ 1.8.7(通常称为隐式系统 ruby​​)。您始终可以rvm use system,即使它未在rvm list 中列出
    • 我也有同样的问题。虽然我运行“rvm use 1.9.2”,但它没有任何区别。似乎 1.8.7 不在 RVM 管理之下。我该如何解决?
    • @igorti 您可能应该提出一个新问题(考虑到这个问题已经回答)。如果您包含rvm listrvm info 的输出,您可能会得到一些帮助。您是否按照乔丹回答中第一个链接中包含的所有说明进行操作?
    • @Brett我在我的 OSX 系统上设置了 RVM,1.8.7 显示为我的可用 Ruby 版本之一,带有 rvm 列表。如您所述,我可以运行 rvm 系统(不需要使用)并且可以在版本之间移动。
    【解决方案2】:

    如果没有实际查看您的系统,我无法确定发生了什么,但您似乎跳过了 RVM 安装后步骤(请参阅RVM Install page,这是将其加载到您的 shell 会话中的原因。

    从 RVM 安装页面引用:

    安装后

    第一次安装 RVM 时,您 必须将以下行放入您的 ~/.bash_profile 在最后,之后 所有路径加载等:

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

    这会将 RVM 加载到 shell 会话中。

    注意:如果您使用的是 zsh,您可能应该将源代码行放入 ~/.zshrc

    这样做可确保 rvm 作为函数加载(而不是作为二进制文件),确保诸如 rvm 之类的命令按预期工作。

    补充一点:

    确保 rvm 是所有 shell 配置文件中的最后一个来源 - 例如。在设置任何环境变量(尤其是 PATH)后,它来源于用户特定的配置文件。否则,当你切换红宝石时,你设置的值会被践踏。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多