当我尝试使用sudo gem cleanup rails清理我的rails版本时
我得到以下错误:
Cleaning up installed gems...
Attempting to uninstall rails-2.3.5
Unable to uninstall rails-2.3.5:
Gem::InstallError: cannot uninstall, check `gem list -d rails`
Attempting to uninstall rails-1.2.6
Unable to uninstall rails-1.2.6:
Gem::InstallError: cannot uninstall, check `gem list -d rails`gem list -d rails的结果是:
rails (2.3.8, 2.3.5, 1.2.6)
Author: David Heinemeier Hansson
Rubyforge: http://rubyforge.org/projects/rails
Homepage: http://www.rubyonrails.org
Installed at (2.3.8): /Library/Ruby/Gems/1.8
(2.3.5): /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
(1.2.6): /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
Web-application framework with template engine, control-flow layer,
and ORM.有人知道哪里出问题了吗?
发布于 2010-06-16 12:11:10
经过长时间的搜索,发现原因是因为一条不存在的路径。出现无法卸载的原因是系统没有搜索/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
在粒度级别上,您可以简单地使用gem cleanup rails命令并键入:
gem uninstall rails -i /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
然后,您可能会遇到另一个与不存在的路径相关的问题,此时,您应该使用以下命令创建一个目录:
mkdir /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/bin
现在所有的卸载都应该可以正常工作了。我建议通过执行以下功能进行一次干净的gem重装:
创建所有现有gem的列表
gem list --no-versions | sed -e '/^(*|$)/d' > installed_gems
卸载所有现有的gem
gem list | cut -d" " -f1 | xargs gem uninstall -aIx
重新安装最新的gem
cat installed_gems | xargs sudo gem install
发布于 2010-10-15 19:29:28
查看http://gabrito.com/post/mac-os-x-gem-cleanup-failing,提议:
sudo sh -c 'GEM_HOME=/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8 gem cleanup'https://stackoverflow.com/questions/3049244
复制相似问题