ruby gem --pre list / install,奇怪的错误?

时间:2011-04-28 19:48:02

标签: linux rubygems

ruby​​gems 1.7.2,红宝石1.8.7。 Linux操作系统。

我认为这是查看宝石的“预”版本的方法 可用的:

gem list --pre --remote someGem

当我尝试这个时,我收到此错误消息:

*** REMOTE GEMS ***

ERROR:  While executing gem ... (Gem::RemoteFetcher::FetchError)
    bad response Not Found 404
(http://gems.rubyonrails.org/prerelease_specs.4.8.gz)

任何人都知道它是什么以及如何解决它,和/或我应该如何列出/安装可用的预发布宝石?我知道当包含“--pre”时,不会列出/安装以“pre *”和类似内容结尾的gem版本。

2 个答案:

答案 0 :(得分:1)

稍后回答我自己的问题,这似乎是默认宝石资源的一个问题。

gem sources -l
*** CURRENT SOURCES ***

http://gems.rubyforge.org/
http://gems.rubyonrails.org
http://gems.github.com

未包含新的http://rubygems.org/。现在无论如何它仍然可以安装大多数宝石,但不是预发布宝石。我认为rubygems更新了它自己的来源,但显然不是,更新到最新版本的rubygems并没有改变它的来源。

Odder仍然,ADDING http://rubygems.org/没有解决它:

gem sources -a http://rubygems.org/

仍然表现出问题,只要那些老三人在那里。我不得不实际删除那些旧的三个(我认为这是推荐的,我们现在需要的只是http://rubygems.org,对吗?)

gem sources -r http://gems.github.com
etc

然后在其中只有一个来源http://rubygems.org,我现在可以再次安装预释放宝石,虽然它确实需要提供“--pre”标记。 (在通过bundler安装时,bundler很乐意安装具有预发布版本的宝石,没有特殊标志 - 但不确定)。

安装预释放宝石似乎仍然存在问题,这些宝石依赖于其他预释放宝石。如果有办法做到这一点,我不知道。我不确定这是否是rubygems的已知问题或影响我以外的人,或者与我的其他一些错误配置有关。还不确定是否通过bundler安装修复此问题。

答案 1 :(得分:0)

似乎rubygems无法达到它的来源。做:

gem update --system

并重试。