Running bundle install fails trying to remote fetch from rubygems.org/quick/Marshal
I'm getting a strange error when doing bundle install:
$ bundle install
Fetching source index for http://rubygems.org/
rvm/rubies/ree-1.8.7-2010.02/lib/ruby/site_ruby/1.8/rubygems/remote_fetcher.rb:304
:in `open_uri_or_path': bad response Not Found 404
(http://rubygems.org/quick/Marshal.4.8/resque-scheduler-1.09.7.gemspec.rz)
(Gem::RemoteFetcher::FetchError)
I've tried bundle update, gem source -c, gem update --system, gem cleanup, etc etc. Nothing seems to solve this. I notice that the URL beginning with http://rubygems.org/quick does seem to be a 404 -- I don't think that's any problem with my network, though if that's reachable for anyone else then that would be a simple explanation for my problem.
More hints: If I just gem install resque-scheduler it works fine:
$ gem install resque-scheduler
Successfully installed resque-scheduler-1.9.7
1 gem installed
Installing ri documentation for resque-s开发者_如何学Pythoncheduler-1.9.7...
Installing RDoc documentation for resque-scheduler-1.9.7...
And here's my Gemfile:
source 'http://rubygems.org'
gem 'json'
gem 'rails', '>=3.0.0'
gem 'mongo'
gem 'mongo_mapper', :git => 'git://github.com/jnunemaker/mongomapper', :branch => 'rails3'
gem 'bson_ext', '1.1'
gem 'bson', '1.1'
gem 'mm-multi-parameter-attributes', :git=>'git://github.com/rlivsey/mm-multi-parameter-attributes.git'
gem 'devise', '~>1.1.3'
gem 'devise_invitable', '~> 0.3.4'
gem 'devise-mongo_mapper', :git => 'git://github.com/collectiveidea/devise-mongo_mapper'
gem 'carrierwave', :git => 'git://github.com/rsofaer/carrierwave.git' , :branch => 'master'
gem 'mini_magick'
gem 'jquery-rails', '>= 0.2.6'
gem 'resque'
gem 'resque-scheduler'
gem 'SystemTimer'
gem 'capistrano'
gem 'will_paginate', '3.0.pre2'
gem 'twitter', '~> 1.0.0'
gem 'oauth', '~> 0.4.4'
There's not even a version of that gem available:
http://rubygems.org/gems/resque-scheduler/versions
Can you paste your Gemfile?
Also, that is supposed to be a 404, it's not a valid endpoint. That file is a compressed version of that gem's gemspec, which now lives on S3/CloudFront. Long story short, it's just where RubyGems wants things to live but we redirect out to a CDN now.
No idea why Bundler is requesting it though.
I'm seeing similar happening for other gems today. I suspect it's a rubygems.org issue.
Have you tried sudo gem install resque-scheduler
- bundler should then use the local system gem once you have it installed.
I just did that and got version 1.9.7, not version 1.09.7 - you don't have a stray zero do you?
This seems to have worked for me:
- Comment out
gem 'resque-scheduler'
from Gemfile. - Run
bundle install
. - Uncomment
gem 'resque-scheduler'
in Gemfile. - Run
bundle install
again.
I have no idea why that worked and it's possible it was some other random flailing around I did like trying gem install bundler. But right before trying the above 4 steps it was still failing the same way and right afterwards it worked.
精彩评论