捆绑更新失败:编组数据太短

时间:2013-02-09 09:19:45

标签: ruby-on-rails rubygems

$ bundle update
Fetching gem metadata from http://rubygems.org/..Unfortunately, a fatal error has occurred. Please see the Bundler 
troubleshooting documentation at http://bit.ly/bundler-issues. Thanks! 
/Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/fetcher.rb:168:in `load': marshal data too short (ArgumentError)
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/fetcher.rb:168:in `fetch_dependency_remote_specs'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/fetcher.rb:125:in `fetch_remote_specs'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/fetcher.rb:128:in `fetch_remote_specs'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/fetcher.rb:73:in `specs'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/source.rb:234:in `block in remote_specs'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/source.rb:232:in `each'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/source.rb:232:in `remote_specs'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/source.rb:165:in `fetch_specs'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/source.rb:70:in `specs'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/definition.rb:191:in `block (2 levels) in index'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/definition.rb:188:in `each'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/definition.rb:188:in `block in index'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/index.rb:9:in `build'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/definition.rb:184:in `index'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/definition.rb:178:in `resolve'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/definition.rb:113:in `specs'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/definition.rb:108:in `resolve_remotely!'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/installer.rb:81:in `run'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/installer.rb:14:in `install'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/cli.rb:291:in `update'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/vendor/thor/task.rb:27:in `run'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/vendor/thor/invocation.rb:120:in `invoke_task'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/vendor/thor.rb:275:in `dispatch'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/vendor/thor/base.rb:408:in `start'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/bin/bundle:14:in `block in <top (required)>'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/lib/bundler/friendly_errors.rb:4:in `with_friendly_errors'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/gems/bundler-1.2.3/bin/bundle:14:in `<top (required)>'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/bin/bundle:19:in `load'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/bin/bundle:19:in `<main>'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/bin/ruby_noexec_wrapper:14:in `eval'
from /Users/macbook/.rvm/gems/ruby-1.9.3-p374@global/bin/ruby_noexec_wrapper:14:in `<main>'

3 个答案:

答案 0 :(得分:8)

尝试在Gemfile中从HTTP更改为HTTPS:

变化:

source 'http://rubygems.org'

要:

source 'https://rubygems.org'

根据Hacker News撰写的这篇文章Rubygems.org was compromised。 更多信息:Marshal data too short errorhttps for rubygems.org in the Gemfile?

答案 1 :(得分:5)

$ gem list

*** LOCAL GEMS ***

bundler (1.2.3)
....
$ sudo gem install bundler
Password:
Fetching: bundler-1.2.3.gem (100%)
Successfully installed bundler-1.2.3
1 gem installed
$ bundle update
Fetching gem metadata from http://rubygems.org/.........
Installing.....
.... .... .....
Your bundle is updated!

答案 2 :(得分:5)

我有同样的错误(在rvm下)。它消失了之后:

rvm repair all

希望这有帮助。