无法更新RubyGems

我在将RubyGems从1.1.1版更新到最新版时遇到了困难。 我尝试过以下方法:

gem更新

结果:

更新已安装的gem
批量更新Gem源索引: http : //gems.rubyforge.org/
无需更新

gem install ruby​​gems-update

结果:

批量更新Gem源索引: http : //gems.rubyforge.org/
批量更新Gem源索引: http : //gems.rubyforge.org/
错误:安装rubygems-update时出错:
rubygems-update需要构建器(> = 0)

gem install ruby​​gems-update update_rubygems

结果:

批量更新Gem源索引: http : //gems.rubyforge.org/
批量更新Gem源索引: http : //gems.rubyforge.org/
错误:安装rubygems-update时出错:
rubygems-update需要构建器(> = 0)
错误:无法在本地或存储库中找到update_rubygems

然后我按照类似问题的建议检查了我是否在我的远程资源中使用了http://gems.rubyforge.org/ 。 这是gem环境:

RubyGems环境:
– RUBYGEMS版本:1.1.1
– RUBY版本:1.8.6(2008-08-11 patchlevel 287)[universal-darwin9.0]
– 安装目录:/ Library/Ruby/Gems/1.8
– RUBY EXECUTABLE:/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
– RUBYGEMS PLATFORMS:
– ruby
– universal-darwin-9
– 创业板路径:
– /Library/Ruby/Gems/1.8
– /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
– 创业板配置:
– :update_sources => true
– :verbose => true
– :benchmark => false
– :backtrace => false
– :bulk_threshold => 1000
– 远程来源:
– http://gems.rubyforge.org

所以,是的,任何想法?

没有必要采取如此激烈的步骤,如完全重建Ruby,从头重新安装Rubygems或安装版本管理器来解决这个问题。 锄头2.3.0的发布只引入了一个依赖循环:

rubygems-update 1.3.5需要(除其他外)hoe-seattlerb
hoe-seattlerb需要锄头> = 2.3.0
hoe> = 2.3.0需要rubygems> = 1.3.1

我写了一篇由zipizap链接的博文。 回顾一下:

  1. 如果您已经尝试更新,请先卸载最新的rubygems-update: sudo gem uninstall rubygems-update -v 1.3.5
  2. 更新到1.3.0: sudo gem install rubygems-update -v 1.3.0
  3. sudo update_rubygems
  4. 然后更新到最新版本: sudo gem update --system

随着Rubygems 1.3.6的发布,看起来这个问题可能已经消失。 从发行说明:

  • 开发代码不再添加到rubygems-update gem中,因此旧版本可以成功更新。

Oi – 我感觉到你的痛苦。 我首先会问明显的; 你有没有用sudo执行命令? 所以你将使用sudo gem install ruby​​gems-updatesudo update_rubygems

如果这不起作用,请再次下载gems源并从头开始重建(可能要删除先前的源代码下载等)。 您可能想阅读有关在Mac OS Snow Leopard上安装Ruby,RubyGems等的HiveLogic文章 。

如果那不起作用…… :)我可能会做大刀阔斧并重建Ruby。

类似问题,不同解决方案

 $ sudo gem install rubygems-update update_rubygems Updating metadata for 1 gems from gems.rubyforge.org/ . complete ERROR: Error installing rubygems-update: rubygems-update requires builder (>= 0) ERROR: could not find update_rubygems locally or in a repository 

 $ sudo gem update --system ERROR: While executing gem ... (RuntimeError) gem update --system is disabled on Debian. RubyGems can be updated using the official Debian repositories by aptitude or apt-get. 

我的解决方案:访问http://docs.rubygems.org/read/chapter/3#page13

并手动安装,即获取rubygems …. tgz并安装它。

希望它可以帮到某人。

gem install builder运气好吗? 这看起来是你需要安装rubygems-update的东西。

我遇到了类似的问题,我可以通过这样做进行升级:sudo gem update –system

问题似乎被检测到并报告为依赖循环:为了安装新gem版本需要一些新版本的依赖…是的,它是一团糟。我看到的推荐的解决方案是以逐步的中间版本方式进行升级,以便使升级过渡平稳,具有较小的版本差距。 在本文中阅读它,它解释得非常好: 链接文本

在阅读并尝试了几次后,我发现它仍然非常模糊/复杂。

所以我选择了另一个解决方案,这个解决方案安装了更多必需的解决方案,但更直接:

  • 安装更新版本的ruby + irb + rdoc + gem(与已存在的旧版本并排)

  • 现在安装gem“Ruby Version Manager”(在debian / ubuntu中没有痛苦,它可以编译最新的ruby版本) 链接文本

  • 使用RVM安装最终和最新的ruby版本(并排再次)并保持更新。

  • (您现在可以使用RVM卸载系统中旧版本的ruby / gems,并且只保留最新的ruby版本)

如果你需要它用于生产系统,RVM已经被认为足够成熟,可以用更新的版本来维护ruby / gems。

希望它可以帮助一些像我一样的初学者“让你的东西变得更糟糕”

从源头重新构建它。