卸载旧版本的Ruby gems
我有几个版本的Rubygem:
$ gem list rjb (1.3.4, 1.3.3, 1.1.9)
我如何删除旧版本,但保持最新?
# remove all old versions of the gem gem cleanup rjb # choose which ones you want to remove gem uninstall rjb # remove version 1.1.9 only gem uninstall rjb --version 1.1.9 # remove all versions less than 1.3.4 gem uninstall rjb --version '<1.3.4'
要删除所有安装的gem的旧版本,以下两个命令是有用的:
gem cleanup --dryrun
上面的命令将预览哪些gem将被删除。
gem cleanup
以上命令将实际删除它们。
试试像gem uninstall rjb --version 1.3.4
。
gem cleanup
使用系统命令。 安装的gem只是文件系统中的目录。 如果要批量删除,请使用rm -R
。
-
gem environment
并注意GEM PATHS
的价值 -
cd <your-gem-paths>/gems
-
ls -1 |grep rjb- |xargs rm -R
方法来清理任何旧版本的gem。
sudo gem cleanup
如果您只想查看可以删除的内容列表,您可以使用:
sudo gem cleanup -d
您也可以通过指定名称来清除特定的gem:
sudo gem cleanup gemname
仅用于删除特定的版本,如1.1.9
gem uninstall gemname --version 1.1.9
如果你仍然面临一些例外的安装gem,如:
无效的gem:软件包已损坏,validation时出现exception:nil:NilClass(NoMethodError)的未定义方法大小为/home/rails/.rvm/gems/ruby-2.1.1@project/cache/nokogiri-1.6.6.2。gem
该,你可以从caching中删除它:
rm /home/rails/.rvm/gems/ruby-2.1.1@project/cache/nokogiri-1.6.6.2.gem
更多细节:
http://blog.grepruby.com/2015/04/way-to-clean-up-gem-or-remove-old.html