Не удается обновить fastlane: для печати требуется версия Ruby> = 2.4.0


13

Я не могу обновить fastlane.

Когда я выполняю, fastlane update_fastlaneя получаю следующую ошибку.

ERROR:  Error installing fastlane:
signet requires Ruby version >= 2.4.0.

Когда я выполняю, ruby -vя получаюruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-darwin18]

Я застрял на fastlane версии 2.28.3. Я попытался переустановить fastlane, но я все еще получаю ту же ошибку.

Что может быть причиной этой проблемы? Как я могу решить это?


1
Предполагая, что вы прикрепляете версию с помощью Gemfile, вы получаете, если вы запускаете bundle exec ruby -vиз каталога вашего проекта? Или вы используете rbenv / rvm? Просто запуск ruby -vне обязательно показывает версию Ruby, которую использует fastlane.
Аарон Брэджер

Когда я побежал, bundle exec ruby -vя получил более низкую версию, 2.2.4. Но мне удалось это исправить. Я удалил свою основную установку Fastlane и переустановил ее с помощью sudo gem install fastlane -NV И в каталоге проекта я смог обновить Fastlane с помощьюbundle update fastlane
gdingenen

Ответы:


19

Используйте этот подход.

Удалить fastlane из доморощенного. Откройте терминал и запустите:

brew cask uninstall fastlane

Установите рубиновые среды. Запустите в терминале:

brew install rbenv ruby-build
echo "" >> ~/.bash_profile
echo 'export PATH=${HOME}/homebrew/bin:${PATH}' >> ~/.bash_profile
echo 'if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi' >> ~/.bash_profile
rbenv install 2.6.5
rbenv global 2.6.5
exit

Снова откройте терминал и запустите:

gem install fastlane
fastlane -v

Форма для вдохновения: https://hackernoon.com/the-only-sane-way-to-setup-fastlane-on-a-mac-4a14cb8549c8


2

Мне удалось установить, следуя инструкциям gdingenen : https://github.com/fastlane/fastlane/issues/15467#issuecomment-540964272

  1. Удалите папку .fastlane из домашней папки пользователя.

    rm -r -df ~ / .fastlane

  2. Установить с помощью драгоценного камня

    sudo gem установить fastlane -NV


Нет, sudo gem install fastlane -NVу меня так же не
получается

0

Вам просто нужно заменить старый рубин на последний.

  1. Найдите последний. Выполните какой ruby , мой результат - / usr / local / opt / ruby ​​/ bin / ruby .

  2. Найди старую. Это /Users/username/.fastlane/bin/bundle/bin/ruby

  3. Замени это. Выполнено.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.