2011-08-22 21 views
20

のための互換性のあるバージョンを見つけて、私はコマンド「バンドルがインストール」を実行したときに調子が悪い宝石のバージョンを投げているようだができませんでした:バンドラーは、私は私のGemfileに宝石「コアラ」を追加した宝石

Bundler could not find compatible versions for gem "faraday": 
In snapshot (Gemfile.lock): 
faraday (0.6.1) 

In Gemfile: 
koala (~> 1.2.0beta1) depends on 
    faraday (~> 0.7.4) 

Running `bundle update` will rebuild your snapshot from scratch, using only 
the gems in your Gemfile, which may resolve the conflict. 

この矛盾を解決するにはどうすればよいですか?

答えて

52

Gemfile.lockの内容を削除し、再度bundle installを実行してください。それは私のために働いています。

+1

rails_adminをインストールすることができませんでした。投稿ありがとう! –

25

エラーメッセージが示すようにbundle updateを実行しましたか? bundle installは、すでにBundlerによって管理されているGemfileとbundle updateアップグレード宝石の変更を処理します。 Gemfile.lockファイルはバージョン番号でロックされ、bundle updateはGemfileに直接指定されていないもの(例えばgem 'rails', '3.0.9')を更新します。

Gemfile.lockを削除すると機能しますが、bundle updateを実行するとより効果的です。

1

Gemfile.lockを削除すると、別の可能性がある動作しない場合:

それは可能性がありますが、その.gemファイルに独自のGemfile.lockを含めうっかりしているに依存している宝石。解決策は、問題のある宝石を更新してGemfile.lockを含めないようにして、再構築して再インストールすることです。

gem rails, '4.0.4' 

私はGemfile.lockを削除することによって、その後

gem rails 

をした:

5

私はレールの指定されたバージョンを削除することによって 代わりに....私のための問題を解決したことがわかりました再実行バンドルインストール

+0

は私の人生を救った。ありがとう! – user3289157

1

もしあなたがそれがsoluなら、あなたは単にGemfile.lockを削除することはできませんなぜGemfile.lockが最初に存在するのか、あなたはこのファイルにロックされているバージョンによってコード化されますか?bundle update gem_nameを使用して競合の原因となるGemのみを更新してください。新しいバージョンの場合は、あなたのコードや他のコードを壊している。

関連する問題