La mise à jour de Fastlane échoue: Signet nécessite la version Ruby> = 2.4.0

13

Je ne parviens pas à mettre à jour fastlane.

Lorsque j'exécute, fastlane update_fastlanej'obtiens l'erreur suivante.

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

Quand j'exécute ruby -vje reçoisruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-darwin18]

Je suis bloqué sur la version 2.28.3 de Fastlane. J'ai essayé de réinstaller Fastlane mais j'obtiens toujours la même erreur.

Quelle peut être la cause de ce problème? Comment puis-je résoudre ça?

gdingenen
la source
1
En supposant que vous épingliez une version à l'aide Gemfile, obtenez-vous si vous exécutez à bundle exec ruby -vpartir du répertoire de votre projet? Ou utilisez-vous rbenv / rvm? La simple exécution ruby -vne montrera pas nécessairement la version de Ruby utilisée par fastlane.
Aaron Brager
Quand j'ai couru, bundle exec ruby -vj'ai eu une version inférieure, 2.2.4. Mais j'ai réussi à le réparer. J'ai supprimé mon installation Fastlane principale et l'ai réinstallée avec sudo gem install fastlane -NV Et dans le répertoire du projet, j'ai pu mettre à jour Fastlane avecbundle update fastlane
gdingenen

Réponses:

19

Utilisez cette approche.

Supprimez fastlane de homebrew. Ouvrez le terminal et exécutez:

brew cask uninstall fastlane

Installez des environnements rubis. Exécuter dans le terminal:

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

Ouvrez à nouveau le terminal et exécutez:

gem install fastlane
fastlane -v

Formulaire d'inspiration: https://hackernoon.com/the-only-sane-way-to-setup-fastlane-on-a-mac-4a14cb8549c8

user2767514
la source
0

Il vous suffit de remplacer l'ancien rubis par le dernier.

  1. Trouvez le dernier. Exécutez quel ruby , mon résultat est / usr / local / opt / ruby ​​/ bin / ruby .

  2. Trouvez l'ancien. C'est /Users/username/.fastlane/bin/bundle/bin/ruby

  3. Le remplacer. Terminé.

littlebear333
la source