2011-08-22 5 views
20

호환 버전을 발견하고 내가 명령 '번들이 설치'를 실행할 때 구타 보석 버전을 던진 것으로 보인다 없습니다 :Bundler를 내가 내 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은 Gemfile에 대한 변경 사항을 처리하고 bundle update은 Bundler가 이미 관리하는 보석을 업그레이드합니다. 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

Gemfile.lock을 삭제할 수 없습니다. 해결 방법은 다음과 같습니다. 그런 다음 Gemfile.lock이 처음 존재하는 이유는이 파일에 잠긴 버전에 따라 코드가 다르므로 bundle update gem_name을 사용하여 충돌을 일으키는 보석 만 업데이트하고 해당 작업에 필요한 변경 사항이 있으면 ReadMe를 확인해야합니다. 그렇지 않으면 당신의 코드 또는 다른 코드를 위반하는 새 버전.