2014-09-18 28 views
51

non riesco a capire il motivo per cui la Cocoapod non è in grado di trovare le specifiche pod ho creato quando corro pod install. Qualcuno potrebbe aiutarmi a risolvere questo problema?Impossibile trovare una specifica in CocoaPods

Sto definendo un subspec nel mio file podspec biblioteca come questa:

s.subspec 'mysubspec' do |c| 
    c.dependency 'ABC','1.0.0' 
end 

Questa dipendenza ABC è elencato nella biblioteca Podfile: il file

pod 'ABC', :git => '[email protected]:myrepo/Podspecs.git', :branch => 'xyz' 

Il Podspec ABC.podspec nel ramo xyz di myrepo/Podspecs sembra così:

Pod::Spec.new do |s| 
    s.name   = "ABC" 
    s.version  = "1.0.0" 
    s.source  = { :git => "[email protected]:myrepo/Podspecs.git", :branch => "xyz" } 
end 

L'errore è [!] Unable to find a specification for ABC (= 1.0.0)

Soluzione: importazione il baccello ABC prima di importare il subspec e aggiungere il tag alla podspec.

+0

Qual è l'errore si riceve? Copia e incolla nella tua domanda. – Anthony

+0

L'errore è 'Impossibile trovare le specifiche per 'ABC' (= 1.0.0)' –

risposta

11

Invece di:

s.source  = { :git => "[email protected]:myrepo/Podspecs.git", :branch => "xyz" } 

Scrivi: Non dimenticare il tag ...

s.source  = { :git => "https://github.com/myrepo/Podspecs.git", :branch => "xyz", 
        :tag => s.version.to_s } 
+0

Qual è il punto con questa proprietà del tag? –

+0

U dovete dire al pod che taggate parlando. È un must. – gran33

+0

Semplicemente, aggiungi un tag al tuo ultimo commit – gran33

19

Per me è stato un problema di trovare le specifiche, non è la specifica stessa. Avevo bisogno di aggiungere un link sorgente al Podfile, vedere Podfile documentation

Cocoapods recentemente aggiunto la necessità di collegare il repo che contiene il file pod specifica che stai cercando, il valore predefinito è:

source 'https://github.com/CocoaPods/Specs.git' 

È potrebbe essere necessario aggiungere più collegamenti di origine se si utilizzano pod più oscuri o fatti in casa.

+0

Questo non può essere un requisito (almeno non con l'ultima versione), perché non ho bisogno di aggiungere collegamenti di origine e dopo aver seguito il suggerimento di Gastón tutto ha funzionato bene. – sinewave440hz

117

Suppongo che ci sia un problema con il baccello maestro repo. Elimina ir e scaricalo nuovamente.

Si può fare:

pod repo remove master 
pod setup 
pod install 

Oppure:

sudo rm -fr ~/.cocoapods/repos/master 
pod setup 
pod install 
+27

L'esecuzione di 'pod setup' ha funzionato. – Rao

+0

Per me, solo l'esecuzione della linea di rimozione ha risolto il problema! Ci è voluto un po 'per iniziare. – sinewave440hz

+1

Wow! Questo. Per qualche ragione il mio repository master Spec non è stato configurato correttamente e ho dovuto rimuoverlo in questo modo e quindi ho fatto il setup e l'installazione. Grazie per questo! – praneetloke

4

mi stavo errore simile per MGBoxkit

Impossibile trovare una specifica per MGBoxkit

[!]

Sostituendo la seguente riga

pod 'MGBoxkit' 

con

pod 'MGBoxKit' 

risolto il problema.

+0

qual è la differenza? – Gargo

+0

Il typo come k è stato sostituito con K. – zeeawan

2

Assicurarsi si è aggiunto

source 'https://github.com/CocoaPods/Specs.git' 

proprio all'inizio della vostra Podfile

1

Nel mio caso ho solo aggiornare il mio cocoapods.

repo update master 
3

risolvo questo dopo aggiungere

source '/Users/username/Documents/path/to/iOS_SpecsRepository' 
source 'https://github.com/CocoaPods/Specs.git' 

a Podfile. bene. Ho usato un repository locale come mio Repo. Così posso utente presente in un altro file podspec

s.dependency 'iOS_Networking_CPN', '~> 0.1.1' 

iOS_Networking_CPN è nel percorso locale.

3

Con me, questo ha funzionato come un fascino.

pod repo remove master 
pod setup 

Tuttavia, si può provare direttamente, pod setup come alcuni utenti hanno sottolineato.

0

Ho perso l'aggiunta di , che causa il problema.

Sostituzione,

pod 'PodName' '~> 2.3' 

Con,

pod 'PodName', '~> 2.3' 

fatto il lavoro.

0

ho risolto il mio problema con il comando di seguito:

aggiornamento cacao pod

Per aggiornare uso questo comando

sudo gem install cocoapods

se sopra comando dà l'errore di utilizzare questo one

sudo gem instal l -n/usr/local/bin cocoapods

e di fare questo

pod aggiornamento repo

Problemi correlati