You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ruby谷歌云盘下载脚本本地正常,Bitrise运行报LoadError错误

Ruby脚本在Bitrise运行时无法加载google/apis/drive_v3的解决方法

本地运行从Google Drive下载资源的Ruby脚本正常,但Bitrise平台执行时出现如下错误:

ruby config_downloader.rb -f Android -p 550 -g ''
/Users/vagrant/.rbenv/versions/2.6.9/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- google/apis/drive_v3 (LoadError)
    from /Users/vagrant/.rbenv/versions/2.6.9/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
    from config_downloader.rb:1:in `<main>'

对应的Gemfile内容:

# Autogenerated by fastlane
#
# Ensure this file is checked in to source control!

source "https://rubygems.org"

gem 'fastlane'
gem 'google-api-client'
gem 'google-apis-drive_v3'

plugins_path = File.join(File.dirname(__FILE__), 'fastlane', 'Pluginfile')
eval_gemfile(plugins_path) if File.exist?(plugins_path)

解决步骤:

  • 先执行bundle install确保依赖安装完全
    Bitrise环境不会自动安装Gemfile里的依赖,需要在运行脚本前添加构建步骤执行bundle install,确保所有gem都安装到当前项目的bundle环境中。

  • 用bundle exec代替直接ruby命令运行脚本
    直接调用ruby会使用系统全局的gem环境,而bundle exec会强制使用Gemfile.lock中锁定的依赖版本,避免环境不一致问题。修改运行命令为:

    bundle exec ruby config_downloader.rb -f Android -p 550 -g ''
    
  • 检查Bitrise的Ruby版本与本地匹配
    错误日志显示Bitrise使用的是Ruby 2.6.9,确保本地开发环境的Ruby版本和这个一致,否则可能出现gem兼容性问题。可以在Bitrise的Ruby版本管理步骤中设置相同的版本。

  • 验证gem是否成功安装
    在Bitrise构建流程中添加一个调试步骤,执行bundle show google-apis-drive_v3,如果输出该gem的路径则说明安装正常;如果提示找不到,检查网络是否能访问rubygems.org,或者尝试在Gemfile中指定具体版本号(比如gem 'google-apis-drive_v3', '~> 0.29.0')后重新安装。


内容的提问来源于stack exchange,提问作者Nikhil Sathawara

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 05:22:18