捆绑安装抛出错误

时间:2014-01-07 08:23:39

标签: ruby-on-rails bundle bundler

尝试运行bundle install

时出现以下错误
Bundler::GemspecError: Could not read gem at /usr/local/rvm/gems/ruby-1.9.3-p484@rails3tutorial/cache/turbolinks-2.1.0.gem. It may be corrupted.

An error occurred while installing turbolinks (2.1.0), and Bundler cannot continue.
Make sure that `gem install turbolinks -v '2.1.0'` succeeds before bundling.

即使安装上面说的gem并且擦bundle install它也会抛出类似的错误并要求我确保安装了另一个gem并且这种情况一直在继续。 我使用的是Rails 4.0.2和ruby 1.9.3p484。

2 个答案:

答案 0 :(得分:1)

可能文件缓存已损坏。尝试:

bundle install --no-cache

如果这不起作用,请删除缓存目录,然后重试:

rm -rf /usr/local/rvm/gems/ruby-1.9.3-p484@rails3tutorial/cache
bundle install

答案 1 :(得分:1)

我刚刚遇到bcrypt gem

这个问题
Fetching gem metadata from https://rubygems.org/...........
Resolving dependencies...

Bundler::GemspecError: Could not read gem at /data/code/mdweb/vendor/bundle/ruby/2.1.0/cache/bcrypt-3.1.7.gem. It may be
 corrupted.
An error occurred while installing bcrypt (3.1.7), and Bundler cannot continue.
Make sure that `gem install bcrypt -v '3.1.7'` succeeds before bundling.

/data/code/mdweb/vendor/bundle/ruby/2.1.0/cache/bcrypt-3.1.7.gem文件为0字节;删除此文件或使用--no-cache选项无济于事。

使用gem install bcrypt -v '3.1.7' 工作,所以我将~/.gem/ruby/2.1.0/cache/bcrypt-3.1.7.gem复制到/data/code/mdweb/vendor/bundle/ruby/2.1.0/cache/bcrypt-3.1.7.gem,这让我可以继续。如果您在系统上找不到.gem,也可以从http://rubygems.org获取bundler文件。

我怀疑gem存在某种连接问题(但出于某种原因,却没有{{1}});我怀疑DNS,因为在我收到错误之前有一个不寻常的漫长等待,但没有进一步调查。