如何在使用rbenv不同的ruby版本时从OSX的系统ruby 1.8.x正确卸载gem?

如何在使用rbenv不同的ruby版本时从OSX的系统ruby 1.8.x正确卸载gem?,第1张

概述我目前安装了rbenv和 ruby 2.1.0,我想继续使用我为这个版本的ruby安装的任何宝石. 但是我也有系统(OSX 10.9)默认ruby(1.8.x),我以前为该版本安装了一些宝石.我在这里可以看到它们: /Library/Ruby/Gems/1.8/gems 我不知道如何从上面的目录中正确卸载宝石所以我可以清理我的机器并为我的rbenv管理的新版本的ruby重新安装一些宝石的更新版本. 我目前安装了rbenv和 ruby 2.1.0,我想继续使用我为这个版本的ruby安装的任何宝石.

但是我也有系统(OSX 10.9)默认ruby(1.8.x),我以前为该版本安装了一些宝石.我在这里可以看到它们:

/library/Ruby/Gems/1.8/gems

我不知道如何从上面的目录中正确卸载宝石所以我可以清理我的机器并为我的rbenv管理的新版本的ruby重新安装一些宝石的更新版本.

例如,我已经为1.8.x安装了Compass和Sass,我不再需要Compass,并且希望将它从我的机器中删除,并希望将Sass从3.2升级到3.3但是让它运行ruby 2.1.0.

目前,gem列表仅为我提供了rbenv设置的ruby活动版本的当前安装的宝石,这是完全有道理的.

那么如何运行gem uninstall< old ruby​​ 1.8.x gem>发现于/library/Ruby/Gems/1.8/gems?

解决方法 rbenv允许您通过运行以下命令切换到系统版本的Ruby:

rbenv global system

然后使用以下方法卸载gem:

sudo gem uninstall -aIx

如果’sudo gem uninstall -aIx’失败,可能是因为你的宝石版本太旧了.然后,您可以运行gem List打印出安装到系统Ruby的所有gem.

sudo gem uninstall [gem name]

在你想要删除的那些.你永远不必在gem安装/卸载上运行sudo,但由于你必须使用它来为系统版本的Ruby安装gems,这是你将它们从那里运出的唯一方法.

我的系统Ruby是2.0,因此您的默认gem可能不同,但默认情况下我预安装了以下内容.如果你不小心试图删除错误的那个,这不是什么大问题,因为它只会警告你它无法卸载默认的宝石.

bigdecimal (1.2.0)io-console (0.4.2)Json (1.7.7)minitest (4.3.2)psych (2.0.0)rake (0.9.6)rdoc (4.0.0)rubygems-update (2.5.1)test-unit (2.0.0.0)

在那之后,记得切换回你的rbenv版本的Ruby.

rbenv Listrbenv global 2.1.0 # or whichever version you have installed

从那里你可以检查你的Ruby版本并安装如下所示的宝石:

ruby -v#=> ruby 2.1.0-p648 (2015-12-16 revision 920553) [x86_64-darwin15]gem install [gem name] # installs to currently set version of Ruby from running ruby -v
总结

以上是内存溢出为你收集整理的如何在使用rbenv不同的ruby版本时从OSX的系统ruby 1.8.x正确卸载gem?全部内容,希望文章能够帮你解决如何在使用rbenv不同的ruby版本时从OSX的系统ruby 1.8.x正确卸载gem?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1235787.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-06
下一篇2022-06-06

发表评论

登录后才能评论

评论列表(0条)

    保存