将 macOS 更新到 Big Sur fastlane 后失败
After updating macOS to Big Sur fastlane fails
我们使用 fastlane 来 运行 CI 工作。必须使用 AdService 框架,为此必须更新 Xcode。为此,必须将 macOS 更新到 Big Sur。更新所有内容后,gitlab CI 停止工作:
$ bundle exec fastlane build
bundler: failed to load command: fastlane (/usr/local/bin/fastlane)
Bundler::GemNotFound: Could not find rake-13.0.3 in any of the sources
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/spec_set.rb:91:in `block in materialize'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/spec_set.rb:85:in `map!'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/spec_set.rb:85:in `materialize'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/definition.rb:170:in `specs'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/definition.rb:237:in `specs_for'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/definition.rb:226:in `requested_specs'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/runtime.rb:108:in `block in definition_method'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/runtime.rb:20:in `setup'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler.rb:107:in `setup'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/setup.rb:20:in `<top (required)>'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:72:in `require'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:72:in `require'
所以我已经尝试过:
在 .bash_profile 添加:
export PATH="$HOME/.fastlane/bin:$PATH"
它没有帮助。尝试过:
sudo gem install fastlane -NV
这也没有帮助。
也尝试过:
fastlane update_fastlane
并且:
bundle install --path vendor/cache
正试图 google 寻求解决方案,但不幸的是无法解决这个问题。我是一名 iOS 开发人员,所以这对我来说是新事物。
知道如何解决这个问题吗?
好的,所以对于那些正在寻找解决方案的人来说,2 天后我终于找到了一个问题。正在挖掘很多,更改,安装,重新安装等。我想尝试一切。
在我的例子中,我使用 bash
shell,所以配置 .bash_profile
,添加了这些代码行:
export PATH="$HOME/.fastlane/bin:$PATH"
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
在.bashrc
有一些路径,我注释掉了,现在只有一行代码:
eval "$(rbenv init -)"
完成后一切正常
P.S。如果您使用 zsh
则文件不同。不是 100% 确定,但检查 .profile
、.zshrc
我还编辑了 gemfile.lock,因为有些 gems 不是必需的,但我什至不确定是否需要,因为现在我不打算碰 CI,因为它有效 :D
希望将来能为某人节省一些时间。否则,如果有人想添加一些东西,那么欢迎你(有一些解释会更好,因为可能没有多少开发人员知道所有这些疯狂的东西是如何工作的:))
我们使用 fastlane 来 运行 CI 工作。必须使用 AdService 框架,为此必须更新 Xcode。为此,必须将 macOS 更新到 Big Sur。更新所有内容后,gitlab CI 停止工作:
$ bundle exec fastlane build
bundler: failed to load command: fastlane (/usr/local/bin/fastlane)
Bundler::GemNotFound: Could not find rake-13.0.3 in any of the sources
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/spec_set.rb:91:in `block in materialize'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/spec_set.rb:85:in `map!'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/spec_set.rb:85:in `materialize'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/definition.rb:170:in `specs'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/definition.rb:237:in `specs_for'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/definition.rb:226:in `requested_specs'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/runtime.rb:108:in `block in definition_method'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/runtime.rb:20:in `setup'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler.rb:107:in `setup'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/bundler-1.17.2/lib/bundler/setup.rb:20:in `<top (required)>'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:72:in `require'
/Users/ci/.rbenv/versions/2.7.2/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:72:in `require'
所以我已经尝试过: 在 .bash_profile 添加:
export PATH="$HOME/.fastlane/bin:$PATH"
它没有帮助。尝试过:
sudo gem install fastlane -NV
这也没有帮助。
也尝试过:
fastlane update_fastlane
并且:
bundle install --path vendor/cache
正试图 google 寻求解决方案,但不幸的是无法解决这个问题。我是一名 iOS 开发人员,所以这对我来说是新事物。
知道如何解决这个问题吗?
好的,所以对于那些正在寻找解决方案的人来说,2 天后我终于找到了一个问题。正在挖掘很多,更改,安装,重新安装等。我想尝试一切。
在我的例子中,我使用 bash
shell,所以配置 .bash_profile
,添加了这些代码行:
export PATH="$HOME/.fastlane/bin:$PATH"
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
在.bashrc
有一些路径,我注释掉了,现在只有一行代码:
eval "$(rbenv init -)"
完成后一切正常
P.S。如果您使用 zsh
则文件不同。不是 100% 确定,但检查 .profile
、.zshrc
我还编辑了 gemfile.lock,因为有些 gems 不是必需的,但我什至不确定是否需要,因为现在我不打算碰 CI,因为它有效 :D
希望将来能为某人节省一些时间。否则,如果有人想添加一些东西,那么欢迎你(有一些解释会更好,因为可能没有多少开发人员知道所有这些疯狂的东西是如何工作的:))