ruby-on-rails - gemfile ruby
Bundler no pudo encontrar versiones compatibles para gema, actualizando la aplicación Rails (4)
Después de crear una nueva aplicación de Rails Siguiendo la publicación oficial del blog de Rails, intentar convertir aplicaciones en Rails 3.2.0.rc2 produce lo siguiente
Updated Gemfile to depend on rails ~> 3.2.0.rc2
gem ''rails'', ''~>3.2.0.rc2''
Updated Gemfile to depend on sass-rails ~> 3.2.3
gem ''sass-rails'', ''~> 3.2.3''
$ bundle install
Fetching source index for http://rubygems.org/
Bundler could not find compatible versions for gem "activesupport":
In snapshot (Gemfile.lock):
activesupport (3.1.1)
In Gemfile:
rails (~> 3.2.0.rc2) ruby depends on
activesupport (= 3.2.0.rc2) ruby
Running `bundle update` will rebuild your snapshot from scratch, using
only the gems in your Gemfile, which may resolve the conflict.
$bundle update
Fetching source index for http://rubygems.org/
Bundler could not find compatible versions for gem "railties":
In Gemfile:
coffee-rails (~> 3.1.1) ruby depends on
railties (~> 3.1.0) ruby
rails (~> 3.2.0.rc2) ruby depends on
railties (3.2.0.rc2)
¿Cuál es exactamente el problema?
Especificaciones del sistema:
Mac OS 10.7.2, Xcode 4.2.1, rvm 1.10.1 utilizando ruby 1.9.3p0 (2011-10-30 revisión 33570) [x86_64-darwin11.2.0]
Además sass-rails
, también debe golpear la versión de coffee-rails
de coffee-rails
que depende (3.2.1 debería hacerlo)
Lo resolví eliminando el bloqueo rm Gemfile.lock
y nuevamente ejecutando bundle install
:
$ rm Gemfile.lock
$ bundle install
Using rake (0.9.2.2)
Using i18n (0.6.0)
Using multi_json (1.0.4)
Using activesupport (3.2.0.rc2)
Using builder (3.0.0)
Using activemodel (3.2.0.rc2)
Using erubis (2.7.0)
Using journey (1.0.0)
Using rack (1.4.0)
Using rack-cache (1.1)
Using rack-test (0.6.1)
Using hike (1.2.1)
Using tilt (1.3.3)
Using sprockets (2.1.2)
Using actionpack (3.2.0.rc2)
Using mime-types (1.17.2)
Using polyglot (0.3.3)
Using treetop (1.4.10)
Using mail (2.3.0)
Using actionmailer (3.2.0.rc2)
Using arel (3.0.0)
Using tzinfo (0.3.31)
Using activerecord (3.2.0.rc2)
Using activeresource (3.2.0.rc2)
Using bundler (1.0.21)
Using coffee-script-source (1.2.0)
Using execjs (1.2.13)
Using coffee-script (2.2.0)
Using rack-ssl (1.3.2)
Using json (1.6.4)
Using rdoc (3.12)
Using thor (0.14.6)
Using railties (3.2.0.rc2)
Using coffee-rails (3.2.1)
Using jquery-rails (2.0.0)
Using rails (3.2.0.rc2)
Using sass (3.1.12)
Using sass-rails (3.2.3)
Using sqlite3 (1.3.5)
Using uglifier (1.2.2)
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
Esta es una forma bastante bruta de solucionar el problema. Si este es un proyecto establecido, es posible que tenga otros problemas después de eliminar el Gemfile.lock
ya que las versiones de dependencia ya no están bloqueadas. Sin embargo, si este es un proyecto nuevo, es poco probable que tenga problemas con este enfoque.
Si su versión de Bundler no es la misma que BUNDLED WITH en la última línea de su Gemfile.lock, puede ocurrir "no se pudieron encontrar versiones compatibles para gema GEMNAME" solo después de agregar una nueva gema a su Gemfile.
vaya así: gem ''activeadmin'', github: ''gregbell/active_admin''
en da gemfile. Soporte de administración activa para los rieles 4 fusionados en la rama maestra.