J'ai rencontré un problème avec Xcode (avec Swift) qui m'a complètement bouleversé. Je me rends compte que cette question a été posée et répondue, mais aucune des réponses n’a fonctionné pour moi, et ma situation semble être un peu différente de celle des autres, car tous mes pods échouent (pas seulement un spécifique). Ils ont tous bien travaillé il y a une semaine.
J'utilise Cocoapods pour certains des cadres Swift les plus courants (par exemple, Alamofire, Eureka, Kingfisher, SwiftyJSON, etc.). Ils fonctionnaient tous correctement dans Xcode 7. Cependant, une des mises à jour (automatiques) a modifié ma version de Xcode, après quoi il est devenu obligatoire de spécifier votre cible dans le podfile. Je l'ai fait et ai exécuté l'installation de pod. Les pods sont toujours présents, mais toutes les instructions d'importation liées à ces frameworks échouent.
Au début, je pensais que c'était un problème d'Alamofire, car c'est le premier qui a échoué avec l'erreur "Aucun module de ce type 'Alamofire" ". J'ai tout essayé avec Alamofire, notamment:
Rien ne supprime l'erreur "Aucun module de ce type ...". Enfin, j'ai retiré Alamofire des modules et j'ai juste fait glisser le projet Alamofire dans mon projet. Cela m'a permis de supprimer les instructions d'importation pour Alamofire. Cependant, à mon grand désarroi, le cadre suivant a maintenant créé "Aucun module de ce type". J'ai déplacé les trois prochains cadres dans mon projet, et il semble que cela va continuer. Apparemment, plus aucun de mes frameworks Pods n'est reconnu. J'ai installé Xcode 8 et essayé avec Swift 2.3, mais je reçois le même message d'erreur "Aucun module de ce type".
Je préférerais vraiment utiliser des Cocoapods, car cela facilite beaucoup les mises à niveau, ainsi que d’autres bonus. J'imagine que certains réglages sont faux et que tous mes gousses sont foutus, mais je n'ai pas eu la chance de les trouver. C'est un peu un désastre car le développement a été interrompu pendant plusieurs jours, sans aucun signe de solution. Si je peux faire quelque chose ou apporter quelque chose pour vous aider à trouver une solution, faites le moi savoir. Si quelqu'un pouvait proposer des solutions ou même des solutions, il serait grandement apprécié. Je travaille actuellement avec Xcode version 7.3.1.
Mon fichier pod ressemble à ceci:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
target 'Y2GOsp' do
use_frameworks!
# Pods for Y2GOsp
pod 'Alamofire', '~> 3.0'
pod 'AlecrimCoreData', '~> 4.0'
pod 'Kingfisher', '~> 2.4'
pod 'Eureka', '~> 1.6'
pod 'SwiftyJSON', :git => 'https://github.com/SwiftyJSON/SwiftyJSON.git', :branch => 'xcode7'
pod 'PhoneNumberKit', '~> 0.1'
pod 'PKHUD'
pod 'Dollar'
end
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['Swift_VERSION'] = '2.2'
end
end
end
Les commentaires de @l'l m'ont conduit à la solution. je suis allé à
build settings > frameworks search path
et réglez-le comme suit:
$(inherited) (non-recursive)
$(PROJECT_DIR)/build/Debug-iphoneos (non-recursive)
$(SRCROOT) (recursive)
Il est maintenant correctement trouver les cadres de pod.
Assurez-vous que vous avez ouvert le fichier .xcworkspace
dans Xcode et pas seulement le fichier .xcodeproj
.
Dans le fichier Pod
Ne commentez pas les lignes pour définir une plate-forme globale pour votre projet
platform: ios, '10 .0 '
use_frameworks!
Maintenant en xcode
a) Nettoyez votre projet
b) Assurez-vous que tous vos "Pods"> "Paramètres de construction"> "Construire une architecture active uniquement" sont réglés sur "NON"
c) Maintenant, construisez le projet
essayez de transformer la version de votre SDK en versions antérieures
pod 'Alamofire', '~> 3.0'
pod 'AlecrimCoreData', '~> 4.0'
pod 'Kingfisher', '~> 2.4'
pod 'Eureka', '~> 1.6'
pod 'SwiftyJSON', :git => 'https://github.com/SwiftyJSON/SwiftyJSON.git', :branch => 'xcode7'
pod 'PhoneNumberKit', '~> 0.1'
pod 'PKHUD'
pod 'Dollar'
par exemple, passer de la version 3.0 à la version précédente, cela a fonctionné une fois pour moi lorsque je faisais face au même problème.
pod 'Alamofire', '~> 2.4' #I am assuming prev available version is 2.4
Mais il ne doit pas nécessairement s'agir de la version "Alamofire", vous pouvez essayer chacun de vos éléments dans la liste du fichier pod.