2010-03-22 15 views
19

tôi đang nhận được một lỗi bundler lạ khi chạylạ lỗi bundler: tar_input.rb: 49: trong `khởi ': không ở định dạng gzip (Zlib :: GzipFile :: Lỗi) trên bó gói

bundle pack 

với gói 0.9.12

bất kỳ ý tưởng nào? (Xem pastie cho một mã định dạng tốt hơn: http://pastie.org/881328)

/opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/site_ruby/1.8/rubygems/package/tar_input.rb:49:in `initialize': not in gzip format (Zlib::GzipFile::Error) 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/site_ruby/1.8/rubygems/package/tar_input.rb:49:in `new' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/site_ruby/1.8/rubygems/package/tar_input.rb:49:in `initialize' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/site_ruby/1.8/rubygems/package/tar_reader.rb:63:in `each' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/site_ruby/1.8/rubygems/package/tar_reader.rb:54:in `loop' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/site_ruby/1.8/rubygems/package/tar_reader.rb:54:in `each' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/site_ruby/1.8/rubygems/package/tar_input.rb:32:in `initialize' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/site_ruby/1.8/rubygems/package/tar_input.rb:17:in `new' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/site_ruby/1.8/rubygems/package/tar_input.rb:17:in `open' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/site_ruby/1.8/rubygems/package.rb:55:in `open' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/site_ruby/1.8/rubygems/format.rb:63:in `from_io' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/site_ruby/1.8/rubygems/format.rb:51:in `from_file_by_path' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/site_ruby/1.8/rubygems/format.rb:50:in `open' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/site_ruby/1.8/rubygems/format.rb:50:in `from_file_by_path' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/source.rb:115:in `specs' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/source.rb:114:in `each' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/source.rb:114:in `specs' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/index.rb:32:in `from_cached_specs' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/index.rb:23:in `application_cached_gems' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/index.rb:15:in `cached_gems' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/index.rb:5:in `build' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/index.rb:14:in `cached_gems' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/environment.rb:15:in `index' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/index.rb:5:in `build' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/environment.rb:13:in `index' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/runtime.rb:86:in `specs' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/runtime.rb:130:in `details' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/runtime.rb:119:in `write_yml_lock' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/runtime.rb:65:in `lock' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/cli.rb:89:in `lock' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/cli.rb:131:in `package' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/vendor/thor/task.rb:33:in `send' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/vendor/thor/task.rb:33:in `run' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/vendor/thor/invocation.rb:109 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/vendor/thor/invocation.rb:116:in `call' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/vendor/thor/invocation.rb:116:in `invoke' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/vendor/thor.rb:137:in `start' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/vendor/thor/base.rb:378:in `start' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/lib/bundler/vendor/thor.rb:124:in `start' 
    from /opt/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/bundler-0.9.12/bin/bundle:11 
    from /opt/REE/bin/bundle:19:in `load' 
    from /opt/REE/bin/bundle:19 
+0

Cũng xảy ra với tôi, và đó là khó nắm bắt trong trường hợp của tôi, chạy lặp đi lặp lại có thể bắt đầu ứng dụng thành công – dolzenko

Trả lời

14

để trả lời câu hỏi của riêng tôi:

việc sửa chữa là để xóa tất cả các nội dung từ

vendor/cache 

sau đó nó làm việc.

rõ ràng là lỗi của trình chặn.

2

Có cùng một điều, đã xóa/bundler_gems/cache

4

đã xảy ra với tôi với gói 0.9.26 và rails3 beta4. đã ra mắt

bundle package 

giờ nó hoạt động. nhưng nếu tôi xóa nhà cung cấp/bộ nhớ cache thì vấn đề vẫn tồn tại.

+0

Điều này làm việc cho tôi, cùng một thiết lập. – edude05

+0

Điều này cũng phù hợp với tôi. Đạo cụ! – mmay

1

rm -rf vendor/cache

bundle package

bundle install

bundle lock

Đó là một chút khó chịu ... Tôi không biết tại sao tôi không thể làm bundle install --relock

21

Tôi đã có vấn đề tương tự với gói upate (bundler 1.0). Tôi đang sử dụng rvm với gemset cho ứng dụng của tôi.

Giải pháp là để loại bỏ:

~/.rvm/gems/[email protected]/cache

+0

Điều này làm việc cho tôi. – Avdi

+0

Ugh, không làm việc cho tôi. Tôi đã thực sự hy vọng nó sẽ. Vẫn đang nghiên cứu ở đây… – Judy

+0

Điều này phù hợp với tôi. Cần lưu ý rằng sau khi làm điều này, tôi đã phải chạy cài đặt bó trên tất cả các ứng dụng và đá quý của tôi bằng cách sử dụng trình bao. – jbgo

1

Nếu bạn đang sử dụng Capistrano với, thư mục bộ nhớ cache của Bundler require 'bundler/capistrano' tại số shared/bundle/ruby/1.8/cache.

0

Tất cả các dấu vết của lỗi này đều biến mất khi tôi nâng cấp lên Bundler 1.0.x.

2

Mặc dù tôi đang chạy Bundler 1.0.0, tôi vẫn gặp phải lỗi này. bundle install không hoạt động nhưng đang chạy bundle package.

+0

ditto. xóa bộ nhớ cache không có tác dụng nhưng gói đã giải quyết được nó –

7

Bị cáo buộc, vấn đề ban đầu được khắc phục bằng Bundler 1.0.x, nhưng tôi vẫn có thông báo lỗi tương tự (sử dụng 1.0.3). Tôi đã xóa tất cả các thư mục cache, bao gồm trong các thư mục RVM, như được nêu trong các câu trả lời khác ở đây - không có súc sắc.

Hóa ra bạn sẽ cũng gặp lỗi này nếu Người quản lý không thể giải quyết một trong các nguồn của bạn (tức là, những người được trả lại bởi $ gem sources).Ngay cả khi bạn liệt kê nhiều nguồn, nó sẽ ping tất cả chúng, và nếu bất kỳ nguồn nào là xấu, nó sẽ sụp đổ với lỗi nondescript 'initialize': not in gzip format này.

Như được mô tả trong this ticket, có thể do một thứ như VPM không thể truy cập hoặc nguồn mạng cục bộ, nhưng tôi thực sự gặp sự cố do tường lửa của công ty tôi chặn rubygems.org.

Chỉ cần gửi câu trả lời này dưới dạng một giải pháp khác có thể là để xóa thông báo lỗi mơ hồ này.

+0

Cảm ơn, đã giải quyết được sự cố của tôi. –

0

Tôi đã giải quyết vấn đề này trong một đường ray 3.1 ứng dụng bằng cách xóa các tập tin lưu trữ đá quý:

$ bundle -v 
Bundler version 1.0.17 
$ rm -f vendor/bundle/ruby/1.8/cache/*.gem 
0

Tôi chạy vào vấn đề này khi triển khai, nhưng không muốn để loại bỏ vendor/cache từ git.

Thay vào đó, tôi đã kết thúc làm điều này:

# deploy.rb 
namespace :bundle do 
    desc "Removes vendor/cache when NO_GEM_CACHE=1 is set. Resolves Zlib::GzipFile::Error (not in gzip format)." 
    task :remove_cache do 
    run "rm -fr #{release_path}/vendor/cache" if ENV['NO_GEM_CACHE'] == '1' 
    end 
end 
before :'bundle:install', :'bundle:remove_cache' 

Bất cứ khi nào lỗi này cây trồng lên đơn giản:

cap deploy NO_GEM_CACHE=1