【问题标题】:Updating fastlane fails: signet requires Ruby version >= 2.4.0更新 fastlane 失败:signet 需要 Ruby 版本 >= 2.4.0
【发布时间】:2019-10-10 13:48:15
【问题描述】:

我无法更新 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,但仍然出现相同的错误。

此问题的原因可能是什么?我该如何解决这个问题?

【问题讨论】:

  • 假设您使用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 更新 Fastlane

标签: ruby fastlane


【解决方案1】:

使用这种方法。

从自制软件中删除 fastlane。打开终端并运行:

brew cask uninstall fastlane

安装 ruby​​ 环境。在终端中运行:

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

【讨论】:

  • 无法构建 gem 原生扩展
【解决方案2】:

我能够按照gdingenen提供的步骤进行安装:https://github.com/fastlane/fastlane/issues/15467#issuecomment-540964272

  1. 从用户的主文件夹中删除 .fastlane 文件夹

    rm -r -df ~/.fastlane

  2. 使用 gem 安装

    sudo gem install fastlane -NV

【讨论】:

  • 不,sudo gem install fastlane -NV 对我来说同样失败
【解决方案3】:

您只需用最新的 ruby​​ 替换旧的 ruby​​。

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

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

  3. 替换它。完毕。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多