【问题标题】:Remove version of Ruby/RubyGems and gems on MacOS properly正确删除 MacOS 上的 Ruby/RubyGems 和 gems 版本
【发布时间】:2020-06-06 14:30:53
【问题描述】:

我最近通过自制软件在我的 Mac 上安装了一个版本的 Ruby(和 RubyGems),因为 Mac 上安装的 RubyGems 由于权限问题而不允许您安装 gem。我按照此线程中最佳答案中的说明进行操作:You don't have write permissions for the /Library/Ruby/Gems/2.3.0 directory. (mac user)

在安装了一些 gem 之后,我意识到我不再需要这个版本的 Ruby 和 RubyGems,所以我运行 brew uninstall ruby 来删除它们(我假设 RubyGems 与 Ruby 一起被删除)。但是,我检查了一下,我安装的 gem 似乎仍在 /usr/local/lib/ruby/gems/2.7.0 中。我可以删除usr/local/lib/ruby 文件夹吗,这是正确的做法吗?不知道 MacOS 自带的默认 RubyGems 是否使用了这个文件夹。

【问题讨论】:

    标签: ruby macos rubygems


    【解决方案1】:

    基本上,当您运行rbenv versions 时,它会显示您所有的 ruby​​ 版本,包括默认安装的版本(系统)。

    • 系统红宝石通常位于/usr/local/lib/ruby/gems/2.5.1
    • rbenv ruby​​ 默认位置在用户路径内~/.rbenv/versions/2.5.1/gems

    要使用 rbenv 卸载 ruby​​,您需要删除特定版本,例如 rbenv uninstall 2.5.1

    我建议你离开你的 ruby​​ 系统安装,但你可以手动删除 ruby​​ 系统路径内的所有 gem /usr/local/lib/ruby/gems/2.5.1

    【讨论】:

      【解决方案2】:

      我是您提到的链接中那个顶级帖子的作者。 Homebrew 在/usr/local/lib/ruby/gems/2.7.0 中安装gem 是正确的。您可以通过两种方式确认:

      By default, binaries installed by gem will be placed into:
        /usr/local/lib/ruby/gems/2.7.0/bin
      
      You may want to add this to your PATH.
      

      我在 definitive guide to installing Ruby gems on a Mac 的 Homebrew 部分写过这个。

      系统 Ruby 未安装在 /usr/local/lib/ruby 中。它位于/Library/Ruby/Gems/2.6.0。您可以安全地删除/usr/local/lib/ruby 目录。在全新的 macOS 安装中,/usr/local 目录为空。

      然后您可以通过运行 brew doctor 检查 Homebrew 是否仍然健康。

      【讨论】:

        【解决方案3】:

        /usr/local/lib/ruby/gems/2.7.0 曾经是 brew 默认安装路径。现在他们已将其更改为/opt/homebrew/lib/ruby/gems/2.7.0。因此,您可以毫无问题地删除/usr下的先前文件夹。

        【讨论】:

          猜你喜欢
          • 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
          相关资源
          最近更新 更多