【发布时间】:2014-04-21 08:37:34
【问题描述】:
我目前安装了rbenv 和ruby 2.1.0,我想继续使用为此版本的 ruby 安装的任何 gem。
但是我也有系统 (OSX 10.9) 默认 ruby (1.8.x) 并且我之前已经为该版本安装了一些 gem。我可以在这里看到它们:
/Library/Ruby/Gems/1.8/gems
我不知道如何让 gem 从上述目录中正确卸载,这样我就可以清理我的机器并为我的 rbenv 管理的新版 ruby 重新安装其中一些 gem 的新版本。
例如,我已经为 1.8.x 安装了 Compass 和 Sass,我不再需要 Compass 并且希望将其从我的机器中删除,并且想将 Sass 从 3.2 升级到 3.3,但让它运行 ruby 2.1 .0.
目前,gem list 只为我提供由rbenv 设置的活动版 ruby 的当前安装的 gem,这很有意义。
那么我如何运行在/Library/Ruby/Gems/1.8/gems 找到的gem uninstall <old ruby 1.8.x gem>?
【问题讨论】:
-
您是否尝试过通过显式路径调用系统 gem 命令来运行它:
/usr/bin/gem uninstall ...? -
感谢@pjs 的建议,遗憾的是系统 gem 列表不包含任何与 ruby 1.8 相关的 gem。
-
@pjs 你的建议触发了一些事情,我在
/System/Library/Frameworks/Ruby.framework/Versions目录中四处寻找,并注意到在1.8和2.0目录旁边有一个符号链接:Current -> 2.0。杀死那个符号链接并创建另一个到 1.8 允许我运行/usr/bin/gem list并查看我想要卸载的 gem。极好的!感谢您帮助我。 -
你完成了这项工作。很高兴听到它对你有用。
-
@St.你能写下并回答你是如何从你的系统红宝石中删除所有宝石的吗?我做了和你完全一样的事情,只是想从 /Library 等中删除所有的宝石。
标签: ruby rubygems gem uninstallation rbenv