Ваша версия Ruby - 2.6.0, но в вашем Gemfile указано 2.5.0

Возникли проблемы с комплектацией. Мой проект использует 2.5.0, но каждый раз, когда я делаю ruby -v это дает мне ruby 2.6.0p0 (2018-12-25 revision 66547) [x86_64-darwin18]

Я использую rbenv и мой rbenv local является 2.5.0 а также rbenv global является 2.5.0

Каждый раз, когда я делаю Bundle дает мне ошибку Your Ruby version is 2.6.0, but your Gemfile specified 2.5.0

я пытался gem install bundler но это не решает проблему.

source 'http://rubygems.org'

ruby '2.5.0'
gem 'rails', '5.0'

и моя.ruby-версия тоже 2.5.0

6 ответов

Я использую macOS, и мне удалось решить эту проблему с помощью rvm сначала установить желаемую версию Ruby (2.5.7 в моем случае).

Шаг за шагом:

  • Установите rvm из rvm.io - версию rvm можно обновить с помощью:
rvm get head
  • Добавьте rvm в конфигурацию оболочки, например ~/.bash_profile:
PATH=$PATH:$HOME/.rvm/bin
source /Users/<YOUR_USER_NAME>/.rvm/scripts/rvm
  • Используя rvm, установите новую версию Ruby:
rvm install ruby-2.5.7
  • Установите текущую версию / версию по умолчанию:
rvm use ruby-2.5.7 --default
  • Измените свой Gemfile, чтобы использовать новую версию Ruby. Например:
ruby '2.5.7'
  • Обновите текущую версию Ruby на основе./Gemfile, запустив:
rvm reload
  • После установки новой версии из каталога проекта выполните:
gem install bundler
bundle update

Удалять Gemfile.lock и попробуйте с правильной версией ruby ​​и запустите bundle install,

Бежать

gem install bundler

or

gem update bundler 

которая может решить вашу проблему.

если вы используете zsh, откройте свой .zshrc, запустив

      nano ~/.zshrc

затем добавьте эти строки в файл

      export PATH="$HOME/.rbenv/shims:$PATH"
eval "$(rbenv init -)"

затем беги

      source ~/.zshrc

Я попробовал rbenv, rvm, и у меня ничего не получилось (я использую чип Mac M1. Оболочка — Zsh).

Но в конце концов asdf сработал.

  1. Я установил asdf, используяbrew install asdf
  2. Добавил его в PATH со следующимcd ~затемnano .zshrc, введите или вставьтеexport PATH="$HOME/.asdf/shims:$PATH"и сохраните его в файл, нажавctrl + Xа затем нажмитеYна клавиатуре, а затемenter
  3. перейдите к загрузке плагина Ruby для ASDF, используяasdf plugin add ruby
  4. затем приступил к загрузке Ruby, который указан в моем сообщении об ошибке, 2.6.10, используяasdf install ruby 2.6.10
  5. установите глобальный Ruby на 2.6.10, используяasdf global ruby 2.6.10(измените «глобальный» на «локальный», если вы собираетесь установить его только локально)
  6. Закройте терминал и перезапустите его
  7. Чтобы проверить активный рубин, я сделалasdf current rubyдал мне 2.6.10
  8. ruby -vтакже дал мне 2.6.10. Обратите внимание, что это первый раз, когда он дал мне что-то совершенно другое, даже после 48 часов устранения неполадок с использованием rbenv и rvm.

К этому моменту сообщение об ошибке должно исчезнуть. Но если это сохранится (чего не должно быть). затем создайте.tool-versionsфайл в корне вашего проекта, содержащий текст версии Ruby, которую мы только что установили, напримерruby 2.6.10

Надеюсь, это поможет кому-то на другом конце Интернета. Удачи. PS, я удалил свой rbenv

Если вы используете VS Code, в Gemfile у вас есть указанная версия Ruby, которую вы можете изменить. Я только что столкнулся с этой проблемой, и как только я изменил версию на мою текущую версию Ruby, она была исправлена. Надеюсь, это поможет любому с такой же проблемой.

Другие вопросы по тегам