【问题标题】:How do I associate a new rvm install with existing ruby versions?如何将新的 rvm 安装与现有的 ruby​​ 版本相关联?
【发布时间】:2025-12-08 21:15:02
【问题描述】:

我在使用 RVM 时遇到问题,因此我将其卸载并重新安装。

事实是我实际上尝试了 rbenv,但对我来说并没有成功,所以我试图让 rvm 重新启动并运行 - 无需安装 Ruby 的重复版本。

我至少安装了 1 个现有版本的 Ruby:

ruby --version
ruby 1.8.7 (2011-12-28 patchlevel 357) [universal-darwin11.0]

但是当我做rvm list 时,我得到一个空白列表:

bash-3.2$ rvm list

rvm rubies


# Default ruby not set. Try 'rvm alias create default <ruby>'.

# => - current
# =* - current && default
#  * - default

所以我的问题有两个部分:

  • 如何查看我系统上的所有 Ruby 版本(假设 rvm 没有显示任何版本)?
  • 如何将新的 RVM 安装与现有的 Ruby 版本相关联?

或者我最好删除所有现有版本的 Ruby 并重新安装所有内容?不过,这似乎是一件令人头疼的事情。

【问题讨论】:

    标签: ruby rvm


    【解决方案1】:

    您可以使用以下方法将现有的 ruby​​ 添加到 rvm:

    rvm mount /path/to/ruby 
    

    或:

    rvm automount
    

    但要小心,因为系统中安装的 ruby​​ 可能具有 gem 的硬编码路径 - 所以 gemset 无法使用它。

    还有一种添加二进制红宝石(已编译)的新方法,用于您的平台运行的可用构建列表:

    rvm list remote
    

    您可以使用以下方法安装这些红宝石:

    rvm mount -r 1.9.3
    

    这可能是安装 ruby​​ 的默认方式,以避免在 RVM 的下一个稳定版本中编译 - 但它仅适用于 ruby​​ 1.9.3+。

    【讨论】:

      【解决方案2】:

      您不想想要将 RVM 与现有的 Ruby 相关联,您只想安装一个新的 Ruby。

      您也不想删除系统 Ruby; OS X 依赖于它。

      在 rvm 下安装一个新的 1.8.7,这样您就可以将您的自己的 gemset 与之关联。让 OS X 管理默认系统 Ruby,您只需忽略它并使用您自己的,由 rvm 单独管理。

      (如果你决定走 rvm 路线。)

      【讨论】: