执行Flutterfire Configure命令遇未处理异常及xcodeproj安装问题
Flutterfire Configure 执行失败及 xcodeproj 安装问题解决
问题现象
- 执行
flutterfire configure时触发未处理异常:
Exception: /Library/Ruby/Site/2.6.0/rubygems/core_ext/kernel_require.rb:86:in `require': cannot load such file -- xcodeproj (LoadError) from /Library/Ruby/Site/2.6.0/rubygems/core_ext/kernel_require.rb:86:in `require' from -e:1:in `<main>' #0 ConfigCommand.run (package:flutterfire_cli/src/commands/config.dart:540:11) <asynchronous suspension> #1 CommandRunner.runCommand (package:args/command_runner.dart:212:13) <asynchronous suspension> #2 main (file:///Users/mustafa/.pub-cache/hosted/pub.dev/flutterfire_cli-0.2.7/bin/flutterfire.dart:57:5) <asynchronous suspension>
- 尝试通过
gem install xcodeproj安装依赖时,即使加sudo也提示权限不足;改用Homebrew安装时,报错:错误:xcproj已被禁用,因为项目无许可证!(原错误:Error: xcproj has been disabled because it no license for the project!)
解决方法
方法1:用Ruby版本管理器规避系统权限问题
系统自带Ruby的权限限制严格,推荐用rbenv管理独立Ruby环境:
- 安装rbenv及Ruby编译工具:
brew install rbenv ruby-build
- 初始化rbenv并配置shell(按终端提示完成操作后,重启终端):
rbenv init
- 安装一个较新的Ruby版本并设置为全局默认:
rbenv install 3.2.2 rbenv global 3.2.2
- 安装xcodeproj:
gem install xcodeproj
安装完成后重新执行 flutterfire configure 即可。
方法2:使用用户本地gem目录安装
无需替换系统Ruby,直接将xcodeproj安装到用户权限目录:
- 安装xcodeproj到本地:
gem install xcodeproj --user-install
- 配置环境变量(替换命令中的Ruby版本号为你的实际版本):
export PATH="$HOME/.gem/ruby/3.2.0/bin:$PATH"
- 立即执行flutterfire configure:
flutterfire configure
方法3:手动配置Firebase替代CLI
如果上述方法都无法解决,可以跳过flutterfire CLI,手动完成配置:
- 登录Firebase控制台创建项目,分别为iOS和Android应用添加配置文件:
- iOS:下载
GoogleService-Info.plist,放到iOS项目的Runner目录下 - Android:下载
google-services.json,放到Android项目的app目录下
- iOS:下载
- 在项目的
pubspec.yaml中添加所需的Firebase依赖包,执行flutter pub get完成依赖安装
内容的提问来源于stack exchange,提问作者Mustafa Ismailjee
相关产品推荐
相关产品推荐

