您的规格源中没有包含满足以下依赖关系的规格:Firebase(〜> 6.33.0),Firebase(= 6.33.0,〜> 6.33.0)。

27

我正在将一些Firebase SDKs实现到我的pods中,但我在版本控制方面遇到了问题。 我想设置Firebase 6.33。 我确实检查了这个版本的pod文件规范,并根据它更新了我的pods。

pod 'Firebase', '~> 6.33.0'
pod 'FirebaseCore', '~> 6.10.3'
pod 'FirebasePerformance', '~> 3.3.0'
pod 'FirebaseRemoteConfig', '~> 4.9.0'
pod 'FirebaseAnalytics', '~> 6.8.3'
pod 'FirebaseCrashlytics', '~> 4.6.1'
当我使用以上代码时,在 Jenkins 上会出现以下错误:
``` 您的规范源中没有包含满足以下依赖项的规范: Firebase (~> 6.33.0), Firebase (= 6.33.0, ~> 6.33.0)。 ```
我先使用了 `pod deintegrate` 命令,然后使用 `pod install` 命令进行了干净的安装。这在我的 MacBook 上不会出错,但在 Jenkins 上会出错。
`podspec.json`: https://github.com/CocoaPods/Specs/blob/master/Specs/0/3/5/Firebase/6.33.0/Firebase.podspec.json
5个回答

59

针对Apple M1用户

在你的ios文件夹里,在终端中按照以下命令操作

sudo arch -x86_64 gem install ffi

arch -x86_64 pod install

如果不起作用,请尝试这个

arch -x86_64 pod install --repo-update

适用于苹果Intel用户

pod install --repo-update

2
"arch -x86_64 pod install --repo-update" 对我来说非常有效,谢谢。 - karrar kazuya
终于,我找到了适合我的解决方案——问题是我使用的是Apple M1。非常感谢! - Jaroslav Kovář

36

pod install --repo-update

使用该命令更新到最新发布的CocoaPods库。


在运行这个命令之前,我执行了以下命令:sudo gem install ffi - GusZL

10

针对使用 Mac M1 的用户,在 VSCode 终端尝试运行 pod install --repo-update 但却失败的情况下,我找到了以下解决方法:

  • 找到应用程序中的本地终端
  • 确保它正在通过 Rosetta 运行(右键单击终端 > 获取信息 > 检查“使用 Rosetta 打开”)
  • 打开终端
  • cd path_to_your_ios_folder,然后运行pod install --repo-update。这应该可以解决问题!

我是使用以下配置:

Pod: 1.11.0
firebase_core: ^1.6.0
firebase_crashlytics: ^2.2.1
firebase_analytics: ^8.3.1
firebase_messaging: ^10.0.6
flutter: 2.2.3

1
这对我有用。非常感谢。你是如何发现它的? - Lahiru Mahagamage
我在 Mac M1 上使用 Android Studio 终端,但它也无法正常工作。但是从本机终端运行一次就可以了。谢谢。 - Syed Ali

1

这对我起了作用

rm -rf Pods
rm -rf Podfile.lock
rm -rf ~/.pub-cache/hosted/pub.dartlang.org
pod cache clean --all
flutter clean
flutter pub get
pod repo update
pod install

0
为什么Firebase有这么多不同的版本?对我来说,我有三个不同的Firebase相关插件(Analytics / Dynamiclinks / Firebasex)。每个插件都有一个不同的源它试图从中获取(一些是v7.0.0,一些是v6.33.0)。我进入了podfile并将所有版本更改为6.33.0,然后就能够构建了。

如果您查看podspecs,您将看到与您选择的库兼容的其他库。并非每个版本都与其他版本兼容,这就是为什么人们添加版本控制的原因。 - jorjj

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接