2011-08-22 7 views
20

He añadido una joya 'koala' a mi Gemfile y parece haber lanzado versiones joya fuera de control cuando corro el 'bundle install' comando:Bündler no pudo encontrar versiones compatibles para la gema

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. 

¿Cómo puedo resolver este conflicto?

Respuesta

52

Borre el contenido de Gemfile.lock, y ejecute bundle install nuevamente. Eso ha estado funcionando para mí.

+1

No pude instalar rails_admin, y esto también lo solucionó yo. ¡Gracias por publicar! –

25

¿Ejecutó bundle update como indica el mensaje de error? bundle install maneja los cambios al Gemfile y bundle update actualiza las gemas que ya están administradas por Bundler. El archivo Gemfile.lock bloquea los números de versión, bundle update actualizará cualquiera de los que no estén directamente especificados en su Gemfile (como gem 'rails', '3.0.9').

Eliminar el archivo Gemfile.lock funcionará, pero ejecutar bundle update es mejor.

1

Si eliminar Gemfile.lock no funciona hay otra posibilidad:

Puede ser posible una joya que está en función de inadvertidamente ha incluido su propio Gemfile.lock en su archivo .gem. La solución es actualizar las gemas ofensivas para que no incluyan un Gemfile.lock, reconstruir y reinstalar.

5

He descubierto que mediante la eliminación de la versión especificada de rieles resolvió el problema para mí .... en lugar de:

gem rails, '4.0.4' 

hice

gem rails 

seguido de la eliminación de la Gemfile.lock y volver a ejecutar paquete de instalación

+0

me salvó la vida. ¡Gracias! – user3289157

1

No puede simplemente eliminarlo Gemfile.lock si eso es una solución Entonces, ¿por qué Gemfile.lock existe? En primer lugar, el código depende de las versiones bloqueadas en este archivo, intente actualizar solo la Gema que causa el conflicto usando bundle update gem_name y debe verificar el archivo Léame si es necesario realizar algún cambio con el nueva versión de lo contrario está rompiendo su código u otros códigos.

Cuestiones relacionadas