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

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

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

Ответ 1

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

gem 'rake', '0.8.7'

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

bundle exec rake ...

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

Дополнительная информация о bundle exec: http://gembundler.com/man/bundle-exec.1.html

Ответ 2

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

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

$rake _0.7.3_

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

Ответ 3

Попробуйте выполнить gem uninstall rake, а затем выберите версию, которую хотите удалить.

Ответ 4

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

bundle exec rake db:migrate

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

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

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

be rake db:migrate