ruby-on-rails - rails - rvm vs rbenv
¿Por qué recibo el error "Tu versión de Ruby es 2.0.0, pero tu Gemfile especificó 2.2.2" aunque tengo 2.2.2 instalado (3)
Estoy usando rbenv y recibo el error Your Ruby version is 2.0.0, but your Gemfile specified 2.2.2
cuando ejecuto el comando bundle install
en mi proyecto. Lo extraño es que en realidad tengo instalada la versión 2.2.2 (como especifica mi Gemfile), y no la versión 2.0.0. (Ver imagen abajo).
Probé la solución ofrecida en este hilo: su versión de Ruby es 2.0.0, pero su Gemfile especificó 2.1.0 , pero no tuvo efecto.
Estoy en una MacBook Air con Yosemite si eso marca alguna diferencia.
Actualizar:
-
which ruby
->Users/myuser/.rbenv/shims/ruby
-
ruby -v
->ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-darwin14]
-
rbenv global 2.2.2
yrbenv rehash
, no tiene efecto -
which bundle
->/usr/bin/bundle
-
gem env
-> -GEM PATHS:
DEGEM PATHS:
-
/Users/myuser/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0
-
/Users/myuser/.gem/ruby/2.2.0
-
Finalmente resolví mi problema usando este hilo Bundler no funcionaba con rbenv, no pude encontrar [gem] ,
usando estos comandos después de reinstalar rbenv:
-
gem install --no-ri --no-rdoc bundler
-
rbenv rehash
-
bundle --path=vendor/bundle
Para mí, el problema era que no había reinicializado correctamente rbenv después de instalar y cambiar a la nueva versión de ruby.
En mi configuración de shell tuve una comprobación incorrecta para evitar ejecutar la source (rbenv init -|psub)
si rbenv
no estaba instalado. Después de abastecerse manualmente funcionó de nuevo.
Tienes un bundler
sistema instalado, y rbenv siempre está tratando de recoger eso. Basado en los pasos en este sitio :
- Asegúrese de que está utilizando la versión de gema adecuada. Escriba
which gem
ygem env
y verifique que apunte a su versión de rubí 2.2.2 - Instalar bundler utilizando esta gema:
gem install bundler
- Una vez instalada esta versión de bundler, ejecute
rbenv rehash
- Llame a
which bundler
, asegúrese de que ahora apunte a la versión shim de bundler
gem install
posible que la gem install
no funcione correctamente con rbenv
si tiene la GEM_HOME
variable GEM_HOME
o GEM_PATH
, o si tiene configuraciones personalizadas en ~/.gemrc
, ~/.gem/gemrc
o /etc/gemrc
. Compruebe el resultado de la gem env
, debería decir algo como esto:
- INSTALLATION DIRECTORY: /Users/<youruser>/.rbenv/versions/<ruby-version>/lib/ruby/gems/<ruby-framework-version>
(...)
- GEM PATHS:
- /Users/<youruser>/.rbenv/versions/<ruby-version>/lib/ruby/gems/<ruby-framework-version>
(note que la ruby-framework-version
no siempre coincide exactamente con la ruby-version
. Si la ruby-version
es la correcta, entonces la ruta debería estar bien)
de lo contrario, asegúrese de que no tenga ninguna anulación del entorno o configuraciones personalizadas dentro de los archivos mencionados anteriormente.
También es posible que desee intentar eliminar todos los paquetes de su máquina y volver a intentarlo más tarde:
-
rbenv local system
-
gem uninstall bundler
-
rbenv local 2.2.2
-
gem uninstall bundler