2016-05-27 158 views
13

我想通過Cocoa豆莢爲我的Objective-C iOS應用程序安裝Firebase。我Podfile如下:FireBase可可豆莢安裝不工作

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. 

可可豆莢最新版本的安裝,我已經嘗試運行莢回購更新。有一個Podfile以下工作正常,但是當我嘗試在我的AppDelegate.m文件中@import Firebase;時,Xcode無法找到該模塊。

target 'RandomName' do 

pod 'Firebase' 

end 

但是,下面的組合不安裝:

target 'RandomName' do 

pod 'Firebase' 
pod 'Firebase/AdMob' 

end 

任何幫助,將不勝感激!

+0

在podfile中使用pod'Firebase'並將Firebase導入爲@import Firebase後;你建立這個項目嗎?如果沒有,然後嘗試構建它。因爲Xcode抱怨沒有找到模塊,但構建錯誤消失了。當我整合其他框架時,我面臨類似的問題並花費了數小時的時間。但建成後開始工作。所以也許同樣的情況可能與你同在。 –

回答

19

我有同樣的問題。使用pod'Firebase'時,請檢查Firebase的安裝版本。對我來說,它安裝了2.4.3這是一箇舊版本。該文檔說,該吊艙應安裝3.2。使用該吊艙。它解釋了爲什麼其他Pod無法正常工作,因爲它們是Firebase 3的一部分。Pod更新不會將Firebase更新爲最新版本。即使強制版本也不行。儘管它們處於相同的podspec中,但似乎無法找到新的Firebase版本。

這是我如何解決它:

  • 請確保您有混蛋安裝了最新版本
  • 確保你的CocoaPods> = 1.0。0安裝
  • 刪除您的吊艙式回購(運行pod repo remove master),並使用pod setup,使一個新的
  • 使用您的POD文件中的以下

    pod 'Firebase/Auth'

    pod 'Firebase/Database'

    pod 'Firebase/Core'

(使用任何你想要的,只是不使用「火力地堡」)

  • pod install
  • 一切都應該可以正常安裝,
+0

我會盡快嘗試,謝謝你的幫助。 –

+5

啊,終於!運行'pod repo remove master'刪除Pods repo,然後運行'pod setup',最後'pod install'做了訣竅!然而,我不需要降級到1.0.0。謝謝你的幫助! –

+0

謝謝!!!!這樣做後,sooooo很多嘗試! – Logan

1

你試圖添加

框架 use_frameworks!

目標 'RandomName' 線

並添加

平臺後:IOS, '9.0'

目標之前....

+0

我根據您的更改以下Podfile,但它沒有工作:源「https://github.com/CocoaPods/Specs.git」 平臺:IOS,「9.0」 目標「RandomName」做 use_frameworks! pod'Firebase/Core' pod'Firebase/AdMob' end –

1

包括一些項目的嘗試。從你的問題來看,你確實嘗試了前兩項,但爲了完整答案而離開這裏。

  • 您收到的錯誤響應很有幫助。請按以下步驟操作:pod repo update

  • 確保您的pod是最新的。

    pwd> pod --version 
    1.0.0 
    
  • 確保你的git是最新的。我有一個生成的機器,有一個過時的git(1.7),和我有同樣的確切的錯誤

  • -

當我更新到這個版本從1.7混帳它好工作。

pwd> git --version 
git version 2.8.1 
  • 我Podfile使用火力地堡動態鏈接
  • 運行pod init從文件夾,您.xcodeproj是
  • 一定要只能從這裏走出推出.xcworkspace而不是.xcodeproj的。
platform :ios, '8.0' 
use_frameworks! 

target 'the-name-of-target' do 
pod 'Firebase/DynamicLinks' 
end 
+0

我將Git更新至2.8.2版,並且已經擁有Cocoapods版本1.0.0,但仍然沒有運氣。運行pod repo更新也不成功。 –

+0

用我的Podfile更新了答案。對'use_frameworks!'的調用超出了目標/最終結構 – RobLabs

+0

這很奇怪 - 仍然cocoapods只會安裝Firebase,但第二個嘗試在它後面添加一些東西,就像在你的Podfile中一樣,它不起作用。您提供的Podfile(替換目標名稱後)仍然無法正確安裝。 –

0

我只是在做下面的步驟來解決此錯誤:

$pod setup -- verbose 

然後做$pod install

,對我和我的莢文件的工作原理是:

source 'https://github.com/CocoaPods/Specs.git' 
platform :ios, '8.0' 
use_frameworks! 

target 'the-name-of-target' do 
pod 'Eureka', '~> 1.6' 
end 

更新:

然後你可以刪除你的主人,並重新安裝使用下面的代碼的CocoaPods:

cd ~/.cocoapods/repos 
rm -rf master 
pod setup 
+0

仍然沒有運氣。運行pod setup --verbose會給我下面的警告:'CocoaPods無法更新'master'回購。如果這是一個意外的問題並且持續存在,你可以檢查它運行'pod repo update --verbose'。運行pod repo更新--verbose再次給我提供相同的警告。 –

+0

當我嘗試安裝時,我得到了同樣的錯誤,我一直在 –

0

我有同樣的錯誤,我的解決辦法是降級Cocoapods1.0.0,因爲Cocoapods1.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 
12

跑着「莢回購刪除主」刪除艙體回購//刪除庫

跑着「莢設置」 //克隆的規格更新的git回購其作爲它的大小超過300K很長一段時間(請耐心等待!)

運行'pod install'//問題已解決

+0

即使花費了很多時間設置pod,也解決了我的問題。謝謝。 –

+0

'莢回購刪除主'刪除莢回購,然後運行'莢設置',最後'莢安裝'做了伎倆! – kamyFC

+0

優秀的 - 花了大約15分鐘,我立刻解決了我的 - ''通過Podfile' 您的規格來源無需要火力地堡/ Core'包含滿足相關性的規範:'火力地堡/ Core'。即使我有最新的git和pod版本,也會出現 錯誤。 – Jazzmine

0

Aadi007從7月12日開始的答案解決了我的問題。要在Finder中運行三個命令

pod repo remove master 
pod setup 
pod install 

一個需要澄清之前刪除的文件夾豆莢和.xcworkspace和profile.lock文件。

0

同樣的問題發生在pod安裝命令上。

請重新啓動終端並導航到您的Xcode項目,然後

簡單地火一樣吊艙安裝命令。 'Firebase/Database'將成功安裝:)