Firebase CocoaPods 安装不工作
Posted
技术标签:
【中文标题】Firebase CocoaPods 安装不工作【英文标题】:Firebase CocoaPods Installation Not Working 【发布时间】:2016-09-25 21:23:47 【问题描述】:我正在尝试通过 CocoaPods 为我的 Objective-C ios 应用程序安装 Firebase。我的 Podfile 如下:
target 'RandomName' do
pod 'Firebase/Core'
pod 'Firebase/AdMob'
end
当我运行pod install
时,我收到以下错误:
[!] Unable to satisfy the following requirements:
- `Firebase/Core` required by `Podfile`
None of your spec sources contain a spec satisfying the dependency: `Firebase/Core`.
You have either:
* out-of-date source repos which you can update with `pod repo update`.
* mistyped the name or version.
* not added the source repo that hosts the Podspec to your Podfile.
Note: as of CocoaPods 1.0, `pod repo update` does not happen on `pod install` by default.
已安装最新版本的 CocoaPods,我尝试运行 pod repo update。拥有以下 Podfile 可以正常工作,但是当我尝试在我的 AppDelegate.m
文件中使用 @import Firebase;
时,Xcode 找不到该模块。
target 'RandomName' do
pod 'Firebase'
end
但是,以下组合无法安装:
target 'RandomName' do
pod 'Firebase'
pod 'Firebase/AdMob'
end
任何帮助将不胜感激!
【问题讨论】:
在 podfile 中使用 pod 'Firebase' 并在将 Firebase 导入为 @import Firebase 之后;你建立这个项目吗?如果没有,请尝试构建它。因为 Xcode 抱怨找不到模块,但在构建时错误消失了。当我集成其他一些框架时,我遇到了类似的问题并花了几个小时在上面。但建成后它开始工作。因此,您可能也会遇到同样的情况。 【参考方案1】:我也有同样的问题。检查使用 pod 'Firebase' 时安装的 Firebase 版本。对我来说,它安装的是旧版本 2.4.3。文档说 pod 应该安装 3.2。使用那个吊舱。它解释了为什么其他 pod 不能工作,因为它们是 Firebase 3 的一部分。Pod 更新也不会将 Firebase 更新到最新版本。即使强制一个版本也不起作用。即使它们在同一个 podspec 中,它似乎也找不到新的 Firebase 版本。
我是这样解决的:
确保您安装了最新版本的 git 确保您已安装 cocoapods >= 1.0.0 删除您的 Pod 存储库(运行pod repo remove master
)并使用 pod setup
新建一个
在您的 pod 文件中使用以下内容
pod 'Firebase/Auth'
pod 'Firebase/Database'
pod 'Firebase/Core'
(使用任何你想要的,只是不要使用'Firebase')
pod install
一切都应该正确安装
【讨论】:
啊终于!运行 'pod repo remove master' 来删除 Pods repo,然后运行 'pod setup' 最后运行 'pod install' 就成功了!!!但是,我不需要降级到 1.0.0。感谢您的帮助! 谢谢!!!!谢谢!!!!谢谢!!!!这行得通! 'pod repo remove master' 删除 Pods 存储库,然后运行 'pod setup',最后 'pod install' 成功了!!! 非常感谢。pod repo remove master
然后pod setup
成功了。【参考方案2】:
运行 'pod repo remove master' 来移除 Pods repo //移除库
运行 'pod setup' //克隆更新的 git repo 以获取规格,因为它的大小超过 300K(请耐心等待!)
运行 'pod install' //问题解决了
【讨论】:
尽管 pod 设置花费了很多时间,但这为我解决了这个问题。谢谢。 'pod repo remove master' 删除 Pods 存储库,然后运行 'pod setup',最后运行 'pod install' 成功!!! 非常好 - 我花了大约 15 分钟,然后立即解决了我的 -Firebase/Core
所需的 Podfile
要求,您的规范来源都不包含满足依赖关系的规范:Firebase/Core
。即使我有最新的 git 和 pod 版本也会出错。【参考方案3】:
你有没有尝试添加
框架 使用_frameworks!
在目标“随机名称”行之后
并添加
平台:ios,'9.0'
在目标之前 ....
【讨论】:
根据你的修改,我有以下 Podfile,但它不起作用: source 'github.com/CocoaPods/Specs.git' platform :ios, '9.0' target 'RandomName' do use_frameworks! pod 'Firebase/Core' pod 'Firebase/AdMob' 结束【参考方案4】:有几个项目可以尝试。根据您的问题,您确实尝试了前两项,但为了我的回答完整而离开这里。
您得到的错误响应很有帮助。按照pod repo update
的步骤操作
确保您的 pod
是最新的。
pwd> pod --version
1.0.0
确保您的 git 是最新的。我的构建机器有一个过时的 git (1.7),我有同样的错误
-当我从 git 1.7 更新到这个版本时,它运行良好。
pwd> git --version
git version 2.8.1
我使用 Firebase 动态链接的 Podfile
从 .xcodeproj 所在的文件夹运行 pod init
确保从这里开始只启动 .xcworkspace 而不是 .xcodeproj。
platform :ios, '8.0'
use_frameworks!
target 'the-name-of-target' do
pod 'Firebase/DynamicLinks'
end
【讨论】:
我将 Git 更新到 2.8.2 版并且已经有了 Cocoapods 1.0.0 版,但仍然没有运气。运行 pod repo update 也不成功。 用我的 Podfile 更新了答案。对use_frameworks!
的调用在目标/结束结构之外
这很奇怪 - 仍然 cocoapods 会很好地安装 Firebase,但是第二次我尝试在它之后添加一些东西,就像在你的 Podfile 中一样,它不起作用。您提供的 Podfile(在我替换了目标名称之后)仍然无法正确安装。
很抱歉听到所有问题。我也很挣扎。我在编辑后的答案中添加了另外两项(pod init
和 .xcworkspace)。
仍然没有,抱歉。我没有使用 Swift,所以我应该离开 use_frameworks!评论了吗?【参考方案5】:
在执行 pod install 命令时也出现了同样的问题。
请重新启动终端并导航到您的 Xcode 项目,然后
只需触发相同的 pod install 命令。 'Firebase/Database' 将成功安装:)
【讨论】:
【参考方案6】:我只是在执行以下步骤来修复此错误:
$pod setup -- verbose
那就$pod install
这对我有用,我的 pod 文件是:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!
target 'the-name-of-target' do
pod 'Eureka', '~> 1.6'
end
更新:
然后您可以使用以下代码删除您的 master 并重新安装 cocoapods:
cd ~/.cocoapods/repos
rm -rf master
pod setup
【讨论】:
还是没有运气。运行 pod setup --verbose 给我以下警告:'CocoaPods 无法更新master
repo。如果这是一个意外问题并且仍然存在,您可以运行 `pod repo update --verbose' 对其进行检查。运行 pod repo update --verbose 再次给我同样的警告。
当我尝试安装时,我遇到了同样的错误【参考方案7】:
我遇到了同样的错误,我的解决方案是将Cocoapods
降级为1.0.0
,因为Cocoapods
1.0.1
没有按我的预期工作。现在一切正常!
sudo gem uninstall cocoapods -v 1.0.1
sudo gem install cocoapods -v 1.0.0
我的Podfile
:
platform :ios, '8.0'
target 'XXX' do
pod 'Firebase/Auth'
pod 'Firebase/Database'
end
【讨论】:
【参考方案8】:对于仍然有这个问题的人。直接应对firebase walkthourgh网站时,安装字符串为:
pod `Firebase/Core`
虽然它应该是:
pod 'Firebase/Core'
如果这也适用于您,则无需设置 pod。
【讨论】:
【参考方案9】:将 Git 和 Cocoapods 更新到最新版本:
Git:$ brew update && brew upgrade
Cocoapods:$ pod repo update
【讨论】:
以上是关于Firebase CocoaPods 安装不工作的主要内容,如果未能解决你的问题,请参考以下文章
Firebase/Admob 安装指南与 Cocoapods 网站上的 pod 与 Google 上的 Firebase 安装指南
无法通过 cocoapods 将 Firebase 安装到我的 Xcode 项目中
pod 安装时出现 Flutter 错误:CocoaPods 找不到 pod“Firebase/CoreOnly”的兼容版本