-1

................................................................... ....

4

3 に答える 3

1

バージョン要件のため、両方の gem を同時に更新する必要があります。

試す: bundle update rspec-rails rspec-core

編集:

Gemfile を投稿していただきありがとうございます。本当の問題は、rspec-rails のバージョンがロックされていることです。

行を変更します。

gem 'rspec-rails', '2.1.0'

gem 'rspec-rails', '~> 2.12.2'

その後、bundle update rspec-rails 完全に機能するはずです。

于 2013-02-06T21:39:52.283 に答える
1

Gemfile を見ずに正確に答えるのは難しいですが、メッセージは、Gemfile の rspec-core のバージョン 2.10.1 に依存していたが、rspec-core に依存する rspec-rails 2.1.0 にも依存していたことを示しています。~> 2.1.0、これは rspec-core バージョン 2.1.0-2.1.x を意味します。およびパッチ レベルのバージョン番号を使用~>すると、パッチ バージョン (最後の番号) は指定されたものと同じかそれ以上になる可能性がありますが、マイナー バージョン (2 番目の番号) またはメジャー バージョン (最初の番号) は指定できません。

修正は、rspec-rails が定義されている場合、Gemfile から rspec/rspec-core を削除するだけで、rspec-core が rspec-rails によって読み込まれます。執筆時点 (2013-02-06) では、最新の rspec-rails は 2.12.2 であるため、以下gem 'rspec-rails', '~> 2.12.2'を使用してから、テストを更新して最新の構文を使用することをお勧めします。そうすれば最新ですが、bundle update後で使用すると、新しいバージョンが 2.12.3 以降であれば更新されますが、2.13.x 以降には更新されません。あなたのテスト。

詳細については、次を参照してください。

于 2013-02-06T21:45:35.430 に答える
0

@ダニエル・エヴァンの答えはあなたのために働くはずですが、あなたの質問の次の部分を説明するために...

bundle install は、現在の Gemfile.lock を使用して gem をインストールします。Gemfile.lock は、バンドルのインストールを初めて行うときに生成され、バンドルの更新を行うときに更新されます。だから、もしあなたが

 bundle update 

新しく生成された依存関係ツリーで Gemfile.lock を更新します。ここで問題を解決する必要があります。

于 2013-02-06T22:29:20.163 に答える