Je ne comprends pas pourquoi le Cocoapod est incapable de trouver la spécification de pod créée lors de l'exécution de pod install
. Quelqu'un pourrait-il m'aider à résoudre ce problème?
Je définis une sous-espèce dans mon fichier podspec de bibliothèque comme ceci:
s.subspec 'mysubspec' do |c|
c.dependency 'ABC','1.0.0'
end
Cette dépendance ABC est listée dans la bibliothèque Podfile:
pod 'ABC', :git => '[email protected]:myrepo/Podspecs.git', :branch => 'xyz'
Le fichier Podspec ABC.podspec
dans la branche xyz de myrepo/Podspecs ressemble à ceci:
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'erreur est [!] Unable to find a specification for ABC (= 1.0.0)
Solution: importer le pod ABC avant d'importer la sous-espèce et ajouter la balise à la podspec.
Au lieu de:
s.source = { :git => "[email protected]:myrepo/Podspecs.git", :branch => "xyz" }
Écrivez ceci: N'oubliez pas le tag ...
s.source = { :git => "https://github.com/myrepo/Podspecs.git", :branch => "xyz",
:tag => s.version.to_s }
Je suppose qu’il ya un problème avec votre référentiel principal de pod. Supprimez-le et téléchargez-le à nouveau.
Tu peux faire:
pod repo remove master
pod setup
pod install
Ou:
Sudo rm -fr ~/.cocoapods/repos/master
pod setup
pod install
Pour moi, le problème était de trouver la spécification, pas la spécification elle-même. J'avais besoin d'ajouter un lien source au fichier podfile, voir documentation Podfile
Cocoapods a récemment ajouté la nécessité de créer un lien vers le référentiel contenant le fichier de spécification de pod que vous recherchez, la valeur par défaut est:
source 'https://github.com/CocoaPods/Specs.git'
Vous devrez peut-être ajouter plusieurs liens de source si vous utilisez des pods plus obscurs ou plus artisanaux.
Avec moi, cela a fonctionné comme un charme.
pod repo remove master
pod setup
Cependant, vous pouvez essayer directement, pod setup
comme l'ont indiqué certains utilisateurs.
Je résous ce problème après avoir ajouté
source '/Users/username/Documents/path/to/iOS_SpecsRepository'
source 'https://github.com/CocoaPods/Specs.git'
à Podfile. bien. J’ai utilisé un référentiel local comme Repo. Donc, je peux l'utiliser dans un autre fichier podspec
s.dependency 'iOS_Networking_CPN', '~> 0.1.1'
iOS_Networking_CPN
est dans le chemin local.
Mettez à jour le référentiel principal des cocoapods.
`pod repo update master`
Je recevais une erreur similaire pour MGBoxkit
[!] Impossible de trouver une spécification pour
MGBoxkit
En remplaçant la ligne suivante
pod 'MGBoxkit'
avec
pod 'MGBoxKit'
résolu le problème.
Assurez-vous que vous avez ajouté
source 'https://github.com/CocoaPods/Specs.git'
au tout début de votre podfile
J'ai manqué d'ajouter ,
cause problème.
Remplacement,
pod 'PodName' '~> 2.3'
Avec,
pod 'PodName', '~> 2.3'
A fait le travail.
Vous devez d’abord ajouter votre Podspec à un dépôt de spécifications privé; Cela permet à CocoaPod de trouver le pod lorsque vous essayez de l’installer.
Entrez les informations suivantes dans Terminal, en vous assurant que vous vous trouvez toujours dans le répertoire framework que vous essayez d’ajouter:
pod repo add [your framework name] [Your framework Git URL]
pod repo Push [your framework name] [your framework .podspec file name]
J'ai résolu mon problème avec la commande ci-dessous:
mise à jour de la gousse de cacao
Pour mettre à jour utilisez cette commande
Sudo gem install cocoapods
si la commande ci-dessus donne une erreur que d'utiliser celle-ci
Sudo gem installer -n/usr/local/bin cocoapods
et que faire cela
mise à jour du repo pod
Suivez les étapes ci-dessous:
Étape 0:pod repo update master
Étape 1:pod install
Et vous avez terminé!
eu le même problème.
ce qui a vraiment fonctionné pour moi a été gem uninstall cocoapods
(comme mentionné ci-dessus par https://stackoverflow.com/users/4264880/seema-sharma ) où j'ai découvert que j'avais 11 (!) différentes versions de cocoapods installées.
J'ai choisi de tout désinstaller puis gem install cocoapods:1.4.0
Tout va bien maintenant.
utilisez tis à la place. tilisation des pods privé et public dans le même projet
ajoutez la source pour le privé et le public (officiel) au début du podfile.
Pour moi, les fonctions ci-dessous ont bien fonctionné, mais le premier essai pourrait être direct. Commande "configuration de pod" Si cela ne fonctionne pas, optez pour les commandes ci-dessous qui feraient définitivement avancer les choses.
pod repo enlever le maître
configuration du pod
pod installer