Je viens d'essayer de mettre à jour de cocoapods 0.39.x vers Cocoapods 1.0. Fonctionnement
installation de pod
du terminal ne provoque aucun avertissement. Tout semble normal. Cependant, lorsque j'essaie de construire mon projet, il génère:
Fichier AFNetworking/AFNetworking.h introuvable
Mon fichier pod ressemble à ceci (il y a quelques autres dépendances mais je n'en ai répertorié qu'une partie):
platform :ios, '8.0'
use_frameworks!
source 'https://github.com/CocoaPods/Specs.git'
target 'MyApp' do
pod 'AFNetworking', '~> 2.6'
pod 'BEMCheckBox'
pod 'ActionSheetPicker-3.0', '~> 2.0.5'
pod 'SCLAlertView'
pod 'DZNEmptyDataSet'
pod 'SSZipArchive'
end
target 'MyAppTests' do
end
Puisque certains projets sont écrits en Objective-C, j'ai créé un en-tête de pontage:
#import <AFNetworking/AFNetworking.h>
#import <ActionSheetPicker_3_0/ActionSheetPicker.h>
#import <SSZipArchive/SSZipArchive.h>
#import <DZNEmptyDataSet/UIScrollView+EmptyDataSet.h>
J'ai explicitement inclus $(inherited)
dans le Header Search Paths
, Le User Header Search paths
Et le Framework Search paths
Mais l'erreur ne disparaît pas. Quelqu'un at-il une idée sur la façon de résoudre ce problème?
Le message d'erreur est assez trompeur. Au début, je pensais que j'avais des problèmes avec mes chemins de recherche d'en-tête, donc j'ai essentiellement essayé tout ce que j'ai trouvé sur stackoverflow.
Si tu utilises use_frameworks!
dans votre Podfile, vous n'avez pas besoin d'inclure tous les pods Objective-C dans votre en-tête de pontage. Vous ne devez le faire que si le pod est distribué comme une bibliothèque statique, pas comme un framework.
J'ai fait ce qui suit
Cmd
+ option
+ shift
+ k
pour nettoyer votre dossier de constructionpod install
import AFNetworking
J'ai essayé de supprimer ~/Library/Developer/Xcode/DerivedData/* et de reconstruire le projet, et cela a fonctionné pour moi.