我最近开始学习Ruby和Ruby on Rails,并观看了大量的入门材料。我最近发现,我一直都会遇到错误,因为gems无法安装或者它们会被安装但是由于某些原因它们无法使用,我已经决定要删除所有内容以便再次安装Ruby并重新开始安装。一个培训视频让我用RVM安装我的大部分宝石,所以我不知道这是否会改变任何东西。
所以简而言之,我的问题是“如何摆脱RVM,Rubygems和所有已安装的Gems,以便我可以重新使用Ruby?”
编辑:我使用的是Mac OS 10.6
答案 0 :(得分:95)
来自RVM支持网站:
RVM将所有内容安装到〜/ .rvm中。 要从系统中删除RVM,请运行'rm -rf~ / .rvm'。你可以在〜/ .rvmrc中添加一个额外的配置文件 当然你的RVM钩子 bash / zsh启动文件。
因此,只需转到命令行并输入rm -rf ~/.rvm
所有已安装的宝石都在〜/ .rvm文件夹中,因此执行上述操作将一次性删除宝石并安装红宝石。
通过在命令提示符处键入以下内容,可以删除使用默认ruby安装添加pre-RVM的Gems:
for x in `gem list --no-versions`; do gem uninstall $x -a -x -I; done
答案 1 :(得分:32)
对于 Windows 和 Unix 复制/粘贴命令提示符( Ruby 1.9.x )。
ruby -e "`gem list`.split(/$/).each { |line| puts `gem uninstall -Iax #{line.split(' ')[0]}` unless line.strip.empty? }"
答案 2 :(得分:23)
gem uninstall -aIx
在没有提示的情况下卸载所有宝石。
-a, --[no-]all Uninstall all matching versions
-I, --[no-]ignore-dependencies Ignore dependency requirements while
uninstalling
-x, --[no-]executables Uninstall applicable executables without
confirmation
答案 3 :(得分:19)
使用RVM,您只需输入...
即可rvm gemset empty GEMSET
其中GEMSET是您想要清空的gemset。然后...
安装捆绑包
yum install bundler
,最后
bundle install
答案 4 :(得分:10)
rvm implode
(请参阅cli docs)似乎有效 - 它甚至可以告诉您在哪里查看剩菜
答案 5 :(得分:4)
在Ubuntu 16.04上,这对我有用。对我来说,当我执行时 命令rails -v由于NameError而引发错误。我有 安装了3个版本的rails(4.2.0,4.2.6,5.0.0.1)。我在努力 使用命令 gem uninstall rails -v卸载不必要的gem 版本号 但我无法做到,但我找到了解决问题的方法 这个问题。为了卸载所有宝石,你必须循环 通过使用bash脚本的gem列表中的所有条目。这个方法是 非常不方便。感谢Rubygems 2.1.0,你现在可以做到 用一个命令。
STEP - 1
首先,请确保将Rubygems升级到2.1.0或 新。对于此运行此命令(包括你正在处理旧的 版。你可以使用这个命令检查你的宝石版本 其中 gem -v 或 gem --version )
gem update --system
gem --version
STEP - 2
在终端
中运行此命令gem uninstall --all
步骤3
安装gem包(我认为没有必要 注意事项) gem install bundle
步骤4
使用此命令在系统上安装导轨
gem install rails -v specific version you want to install
您可以在官方网站rails all versions上查看rails版本
示例: - 我已经安装了rails 4.2.6
版本,您可以根据要求安装。
gem install rails -v 4.2.6
步骤-5
最后检查已安装的rails框架应用程序的版本 使用基本命令 rails -v 。它将回应当前 rails框架的版本。享受:)
参考文献
http://ruby-journal.com/how-to-uninstall-all-ruby-gems/ http://guides.rubyonrails.org/v4.1/getting_started.html
答案 6 :(得分:2)
我第一次遇到错误,说:
您没有/ usr / bin目录的写权限
要获得许可,我成为了的root用户(由于我目前理解的原因,这可能很危险):
sudo -s
然后,我一直遇到一个错误:
[gem]无法卸载,因为它是默认的宝石
这允许我卸载所有内容:
for i in `gem list --no-versions`; do gem uninstall -aIx $i; done
答案 7 :(得分:0)
FWIW,有一些奇怪的情况,安装了 gems 但没有真正安装:
这应该相当可靠。
gem uninstall -Iax `gem list | grep default | awk '{print $1}'`