J'ai un projet utilisant des modules que j'ai installés via des cocoapodes. L'un d'entre eux est Charts ( https://github.com/danielgindi/ios-charts ). Pour migrer mon projet de Swift 1.2 à Swift 2, j'ai suivi l'assistant qui apparaît lors de la première ouverture du projet avec XCode 7. Le module Charts est déjà disponible pour Swift 2 et j'ai modifié mon fichier podfile pour qu'il contienne afin de passer à cette version plus récente et pas encore officiellement publiée:
pod 'Charts', :git => 'https://github.com/danielgindi/ios-charts.git'
Maintenant, l'espace de travail du projet s'ouvre correctement dans XCode, à l'exception d'un message d'erreur indiquant que je ne peux pas me débarrasser de moi-même et que je ne trouve aucune information utile sur le Web:
À l'endroit où j'importe mon module "Graphiques", le message d'erreur mentionné ci-dessus apparaît. Tout d'abord, je me suis assuré que l'ensemble du projet est défini sur la cible de déploiement IOS 9.0 comme auparavant.
Comme cela ne résout pas le problème, j'ai créé Produit -> Nettoyer, Produit -> Nettoyer le dossier de construction et enfin supprimé le contenu du dossier "Données dérivées". J'ai également redémarré XCode après toutes ces étapes, mais l'erreur persiste.
Quelqu'un a-t-il une idée de ce que j'aurais pu manquer? Merci beaucoup!
Christian
Si vous devez prendre en charge des versions plus anciennes et que vous n'avez pas la possibilité de simplement mettre à niveau la cible de déploiement de votre projet vers la version requise, essayez de la rétrograder dans un pod:
Pods
dans Project Navigator.TARGETS
et remplacez son Deployment Target
par la version dont vous avez besoin.Travaillé pour moi afficher un instantané de Xcode
Il suffit de mettre "plateforme: ios, '8.0'" ou quelle que soit votre version dans votre Podfile et cela sera résolu.
Pour moi, effacer DerivedData a résolu le problème. Il semble que clean n’efface pas les fichiers swiftmodule.
rm -rf ~/Library/Developer/Xcode/DerivedData
Vous devez mettre à jour le fichier podspec en s.ios.deployment_target = '9.0'
Dans mon cas, le module importé de Pod FOO échouait car il nécessitait la version X:
tl; dr; il se peut que vous utilisiez le pod 1 qui utilise un autre pod 2; le problème est dans podspec du pod 1
Vous devez accéder aux pods. Pour chaque cible, définissez la même cible de développement que pour le projet principal, nettoyez et reconstruisez à nouveau.