Оновлення фаст-ланцюга не вдається: для сигнату потрібна версія 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

Використовуйте такий підхід.

Вийміть фаст-лайн з домашнього пива. Відкрити термінал і запустити:

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/isissue/15467#issuecomment-540964272

  1. Видаліть папку .fastlane з домашньої папки користувача

    rm -r -df ~ / .fastlane

  2. Встановити за допомогою gem

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


Ні, sudo gem install fastlane -NVне виходить для мене саме таким же чином
RAM237

0

Вам просто потрібно замінити старий рубін на останній.

  1. Знайдіть останню. Виконати який рубін , мій результат / 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.