2011-06-05 39 views
10

Tengo la versión de Rake 0.9.1 pero necesito usar 0.8.7 para un proyecto, y estoy bastante seguro de que tengo ambas versiones instaladas pero siempre usa 0.9.1 de forma predeterminada. ¿Hay alguna manera de especificar qué versión de Rake usar?Usar la versión anterior de Rake

Estoy tratando de ejecutar este: rake db: db caída: crear db: migrate db: semillas y me sale este error: ya ha activado el rastrillo 0.9.1, pero su Gemfile requiere rastrillo 0.8.7 . Considere el uso de bundle exec.

+1

Bueno, la respuesta estaba en su pregunta: ** Considere el uso de exec paquete **;) – Arsen7

Respuesta

15

Puede especificar la versión del rastrillo de usar, en su Gemfile:

gem 'rake', '0.8.7' 

Aunque el mensaje de "error" que está recibiendo lo dice todo ... lo que necesita para funcionar:

bundle exec rake ... 

... para utilizar el rastrillo derecho para ejecutar sus tareas de rastrillo.

Más información sobre bundle exec: http://gembundler.com/man/bundle-exec.1.html

24

búsqueda gema (o lista) de rastrillo, debe avisar a la que se instalan versiones.

Puede invocar el rake con un número de versión específico entre corchetes con guiones bajos.

$rake _0.7.3_

Ésta es una característica estándar de los binarios empaquetados joya.

8

Intente ejecutar gem uninstall rake y simplemente seleccione la versión que desea desinstalar.

3

Sucede porque está utilizando rastrillo del sistema. (Última versión por defecto) La solución es el uso de comandos siguientes:

bundle exec rake db:migrate 

Además, puede crear alias. Porque este comando es demasiado grande y difícil de escribir.

echo "alias be='bundle exec'" >> ~/.bash_profile 
source ~/.bash_profile 

continuación, puede utilizar siga comando corto:

be rake db:migrate 
Cuestiones relacionadas