Используйте более старую версию Rake

У меня есть Rake версии 0.9.1, но мне нужно использовать 0.8.7 для проекта, и я уверен, что у меня установлены обе версии, но по умолчанию он всегда использует 0.9.1. Есть ли способ указать, какую версию Rake использовать?

Я пытаюсь запустить это: rake db: drop db:create db:migrate db:seed и я получаю эту ошибку: Вы уже активировали rake 0.9.1, но для вашего Gemfile требуется rake 0.8.7. Рассмотрите возможность использования bundle exec.

4 ответов


вы можете указать версию грабли для использования, в вашем Gemfile:

gem 'rake', '0.8.7'

хотя сообщение "Ошибка", которое вы получаете, говорит все это... вам нужно бежать:

bundle exec rake ...

... для того, чтобы использовать правильные грабли для запуска ваших задач грабли.

подробнее о bundle exec: http://gembundler.com/man/bundle-exec.1.html


Gem search (или list) rake, должен сообщить вам, какие версии установлены.

вы можете вызвать rake с определенным номером версии, заключенным в квадратные скобки подчеркивает.

$rake _0.7.3_

Это стандартная функция двоичных файлов, упакованных в gem.


попробовать-исполнителя gem uninstall rake тогда просто выберите версию, которую вы хотите удалить.


это происходит потому, что вы используете грабли из системы. (последняя версия по умолчанию) Решение выполните команду:

bundle exec rake db:migrate

кроме того, вы можете создать псевдоним. Потому что эта команда слишком большая и трудная для записи.

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

затем вы можете использовать следующую короткую команду:

be rake db:migrate