有没有修复“无法在任何源中找到* gem *”错误,不涉及删除Gemfile.lock?

时间:2012-08-09 14:13:36

标签: ruby-on-rails ruby-on-rails-3

我正在尝试在新计算机上设置我的开发环境。

git clone -o heroku git@heroku.com:theirapp.git
cd theirapp
bundle
Fetching gem metadata from https://rubygems.org/......
Fetching gem metadata from https://rubygems.org/..
Could not find jquery-rails-2.0.0 in any of the sources

在Google上搜索此错误后,响应似乎是删除Gemfile.lock,然后再次运行bundle。这有效,但后来我有不同版本的宝石,我没有在Gemfile中指定版本。有没有办法在不删除Gemfile.lock的情况下修复此错误?我正在使用Rails 3.2和Ruby 1.9.3。

6 个答案:

答案 0 :(得分:23)

只需运行

bundle --full-index

应该做的伎俩

答案 1 :(得分:20)

根据rubygems.org,jquery-rails 2.0.0已经yanked。这解释了你使用jquery-rails的错误。

运行$ bundle update jquery-rails将重建您的宝石快照。这样你就不必删除Gemfile.lock

答案 2 :(得分:7)

旧版本的捆绑包给了我同样的问题。经过一番令人费解的事后,我意识到这就是问题所在。

正在运行gem install bundler将其完全修复。

答案 3 :(得分:2)

bundle update jquery-rails会更新jquery-rails宝石,这可能就是你要找的东西。运行bundle update相当于删除Gemfile.lock,在大多数情况下不建议使用{{1}}。见这里:Heroku push rejected: can't find jquery-rails-2.0.0 in sources

答案 4 :(得分:1)

我发现最安全的方法是指定gem版本,并且只在必要时才更改它们。给我留下了很多麻烦。

答案 5 :(得分:0)

我遇到了同样的问题,但使用了不同的 gem。 运行 gem install yourgem -v 1.x.x 解决了我的问题。