Грабли или любая другая команда рейка не работают должным образом
Привет, я делал некоторое кодирование и пытался
rake routes
и это сообщение об ошибке появилось, и я не знаю, что делать
rake aborted!
Gem::LoadError: You have already activated rake 10.4.2, but your Gemfile requires rake 10.4.0. Prepending `bundle exec` to your command may solve this.
/home/simplybel/.rvm/gems/[email protected]/gems/bundler-1.7.4/lib/bundler/runtime.rb:34:in `block in setup'
/home/simplybel/.rvm/gems/[email protected]/gems/bundler-1.7.4/lib/bundler/runtime.rb:19:in `setup'
/home/simplybel/.rvm/gems/[email protected]/gems/bundler-1.7.4/lib/bundler.rb:121:in `setup'
/home/simplybel/.rvm/gems/[email protected]/gems/bundler-1.7.4/lib/bundler/setup.rb:7:in `<top (required)>'
/home/simplybel/projects/gamification/config/boot.rb:4:in `<top (required)>'
/home/simplybel/projects/gamification/config/application.rb:1:in `<top (required)>'
/home/simplybel/projects/gamification/Rakefile:4:in `<top (required)>'
LoadError: cannot load such file -- bundler/setup
/home/simplybel/projects/gamification/config/boot.rb:4:in `<top (required)>'
/home/simplybel/projects/gamification/config/application.rb:1:in `<top (required)>'
/home/simplybel/projects/gamification/Rakefile:4:in `<top (required)>'
(See full trace by running task with --trace)
любая помощь с этим действительно будет оценена
Ответы
Ответ 1
У меня возникла проблема с старым проектом после запуска команды rails new MyNewProject
Чтобы исправить это в старом проекте, я просто зашел в файл Gemfile.lock и искал rake
. Я нашел rake (10.3.2)
и заменил его на rake (10.4.2)
, и это исправило его для меня.
Ответ 2
Обычно вам не нужно вручную редактировать gemfile.lock
. И если вы удалите файл и перезапустите его с нуля, убедитесь, что версии ваших драгоценных камней в вашем gemfile
указаны так, что вы получите те, которые вы ожидаете. Для этой ситуации:
$ bundle update rake
работал у меня.
Ответ 3
Эта ошибка возникает из-за того, что ваш файл gem использует другую версию рейка, поэтому вам нужно указать, какая из версий рейка вам нужна, поэтому это может помочь вам
bundle exec rake routes
Ответ 4
Сегодня я столкнулся с этой проблемой. Я использовал RubyMine для создания нового проекта, и он установил rake 10.4.2. Для моей работы я должен использовать 10.3.2 для db: migrate.
Решение RubyMine:
Чтобы устранить проблему в RubyMine, я открыл открытую конфигурацию запуска для db: migrate, перешел на вкладку Bundler и проверил "Запустите script в контексте пакета (bundle exec)"
Ответ 5
Если вам нужно использовать более старую версию, просто удалите новую версию:
gem uninstall rake --version=<newer version>
В вашем случае:
gem uninstall rake --version=10.4.2
Ответ 6
Вы можете удалить старую версию драгоценного камня, используя:
gem uninstall rake --version=[Here version that you want to delete]
После удаления просто используйте rake routes
как обычно.
Ответ 7
- вручную удалить файл gemfile.lock
- выполнить установку пакета
Это исправило проблему для меня.
Ответ 8
Вероятно, вы захотите обновить свой файл gemfile.lock и изменить версию рейка с 10.4.0 до 10.4.2, и вы сможете продолжить работу так, как вы были до этой проблемы.
Ответ 9
Команда
bundle exec rake routes
заставляет его работать, но лучше, если вы выберите нужную версию rake и измените ее в своем Gemfile.lock
Ответ 10
У меня было два ответа:
bundle exec rake routes
- Постоянное решение
gem update rake
и затем rake routes