ruby-on-rails 无法更新RubyGems

huwehgph  于 12个月前  发布在  Ruby
关注(0)|答案(9)|浏览(201)

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

结果:

更新已安装的gems
批量更新http://gems.rubyforge.org/的Gem源索引
没有更新

gem install rubygems-update

结果:

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

gem安装rubygems-update更新_rubygems

结果:

批量更新Gem源索引:http://gems.rubyforge.org/
批量更新http://gems.rubyforge.org/的Gem源索引
错误:安装rubygems-update时出错:
rubygems-update需要builder(>= 0)
错误:无法在本地或存储库中找到update_rubygems
然后我检查了一下,就像 theIV 在一个类似的问题上建议的那样,我的远程源代码中是否有http://gems.rubyforge.org/。下面是gems环境:
RubyGems环境:

  • RUBYGEMS版本:1.1.1
  • RUBY版本:1.8.6(2008-08-11 patchlevel 287)[universal-darwin 9.0]
  • 编译目录:/Library/Ruby/Gems/1.8
  • Ruby可执行文件:/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
  • RUBYGEMS平台:
    • Ruby
    • 通用-达尔文-9
  • GEM路径:
    • /Library/Ruby/Gems/1.8
    • /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
  • GEM配置:
    • :update_sources => true
    • :verbose => true
    • :benchmark => false
    • :backtrace => false
    • :bulk_threshold => 1000
  • 远程来源:
aelbi1ox

aelbi1ox1#

没有必要采取彻底重建Ruby,从头开始重新安装Rubygems或安装版本管理器来解决这个问题。hoe 2.3.0版本引入了一个依赖循环:
rubygems-update 1.3.5需要(除其他外)hoe-seattlerb
hoe-seattlerb需要hoe >= 2.3.0
hoe >= 2.3.0需要rubygems >= 1.3.1
我写了the blog post链接到zipizap。回顾一下:
1.如果您已经尝试过更新,请先卸载最新的rubygems-update:sudo gem uninstall rubygems-update -v 1.3.5
1.更新到1.3.0:sudo gem install rubygems-update -v 1.3.0

  1. sudo update_rubygems
    1.然后更新到最新版本:sudo gem update --system
    随着Rubygems 1.3.6的发布,看起来这个问题可能会消失。从发行说明:
  • 开发部门不再添加到rubygems-update gem中,因此旧版本可以成功更新。
egmofgnx

egmofgnx2#

我能体会到你的痛苦。我先问一个显而易见的问题:你用sudo执行命令了吗?所以你会使用 sudo gem install rubygems-updatesudo update_rubygems
如果这不起作用,重新下载gems源代码并从头开始重建(可能需要删除以前的源代码下载等)。
如果这不起作用.:)我可能会做激烈的和重建Ruby以及。

e0uiprwp

e0uiprwp3#

相似的问题,不同的解决方案

$ 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并安装它。
希望它能帮助某人。

ffdz8vbo

ffdz8vbo4#

gem install builder有什么进展吗?这看起来就是你需要安装rubygems-update的东西。

relj7zay

relj7zay5#

我遇到了一个类似的问题,我可以通过这样做来升级:sudo gem update --system

i7uq4tfw

i7uq4tfw6#

这个问题似乎被检测到并报告为一个依赖循环:为了安装新的gems版本,需要一些新的版本依赖.是的,这是一个混乱。我看到的推荐解决方案是以一步一步的中间版本方式进行升级,以使升级过渡顺利,版本差距很小。阅读本文,它解释得很好:link text
在阅读了它并尝试了几次之后,我发现它仍然非常模糊/复杂。
所以我去了另一个解决方案,它安装更多,然后重复,但更直接:

  • 安装一个更新的ruby + irb + rdoc + gem版本(与现有的旧版本并行)
  • 现在安装gem“Ruby Version Manager”(在debian/ubuntu中没有痛苦,它可以编译最新的Ruby版本)link text
  • 使用RVM安装最终和最新的ruby版本(再次并排)并保持更新。
  • (你现在可以使用RVM卸载系统中旧版本的ruby/gems,只保留最新版本的ruby)

如果你需要它用于生产系统,RVM已经足够成熟,可以维护ruby/gems更新到新版本。
希望它能帮助一些像我这样的先发球员“摆脱困境”

0sgqnhkj

0sgqnhkj7#

注意事项:RubyGems 1.1和1.2在没有安装rubygems-update的情况下会出现升级问题。如果你看到Nothing to update,你需要使用以下说明。如果你安装了旧版本的RubyGems,那么你仍然可以通过两个步骤来完成:

$ gem install rubygems-update  # again, might need to be admin/root
$ update_rubygems              # ... here too

字符串

lqfhib0f

lqfhib0f8#

我在ruby版本(在我的情况下是2.5.x)中遇到了类似的问题,如下所示:

$ sudo gem update --system

Updating rubygems-update
ERROR:  Error installing rubygems-update:
There are no versions of rubygems-update (= 3.5.1) compatible with your Ruby & RubyGems
rubygems-update requires Ruby version >= 3.0.0. The current ruby version is 2.5.0.

字符串
我通过指定3.3.26版本来修复它,该版本可以在另一台机器上运行ruby 2.5,如下所示:

$ sudo gem update --system 3.3.26

gg0vcinb

gg0vcinb9#

从源头上重建。

相关问题