更新fastlane失败:Signet需要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不一定显示fastlane使用的Ruby版本。
亚伦·布拉格

当我运行时,bundle exec ruby -v我得到了一个较低的版本2.2.4。但是我设法解决了。我删除了Fastlane的主要安装,然后用重新安装了它sudo gem install fastlane -NV 。在项目目录中,我可以使用bundle update fastlane
gdingenen 19-10-11的

Answers:


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



0

您只需要用最新的红宝石替换旧的红宝石。

  1. 找到最新的一个。执行哪个ruby,我的结果是/ usr / local / opt / ruby​​ / bin / ruby

  2. 找到旧的。它是/Users/username/.fastlane/bin/bundle/bin/ruby

  3. 代替它。做完了

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.