En construisant mon projet pour une cible différente, j'obtiens cette erreur:
Impossible de déterminer les chemins de fichier générés pour le code Core Data génération: Domaine d'erreur = Code NSCocoaErrorDomain = 260 "Aucune version actuelle du modèle At chemin /Users/abc/Documents/Code/xyz-ios/ABC/iPhoneXMPP/SRT/Model.xcdatamodeld:" UserInfo = {NSFilePath =/Utilisateurs/abc/Documents/Code/xyz-ios/ABC/iPhoneXMPP/SRT/Modèle.xcdatamodeld, NSLocalizedDescription = Aucune version actuelle du modèle sur le chemin /Users/abc/Documents/Code/xyz-ios/ABC/iPhoneXMPP/SRT/Model.xcdatamodeld:}
Le chemin mentionné par erreur est "
/Users/abc/Documents/Code/xyz-ios/ABC/iPhoneXMPP/SRT/Model.xcdatamodeld
"mais le dossier" SRT "se trouve dans le dossier" Temp "dans la structure de mon dossier. Comment puis-je résoudre ce problème?
Dans My Case, cela résultait des conflits entre Model.xcdatamodeld lors de la fusion avec Remote (Source ou Head). D'une manière ou d'une autre, ce conflit n'a pas été détecté par GIT et a été traité comme sans conflit.
Résolution: Ouvrez Model.xcdatamodeld en tant que XML (avec TextEditor) et recherchez les conflits (>>>). Résoudre le conflit et enregistrer.
Semblable à la réponse de shallowThought, j'ai découvert que je devais d'abord décocher la cible, puis la revérifier, puis la reconstruire.
Sous Xcode, sélectionnez votre modèle Model.xcdatamodeld
et cochez la case "Appartenance à la cible" pour votre nouvelle cible dans l'inspecteur.
Dans mon cas, dans la sélection de fichiers, la génération de code a été sélectionnée comme étant Swift . Lorsque j'ai sélectionné le langage de génération de code comme Objective-C . Erreur disparue.
Après avoir sélectionné Objective-C
Produit> Nettoyer
et ensuite Reconstruisez le projet.
Cela a fonctionné pour moi.
Just Clean and Build a fonctionné pour moi après avoir ajouté manuellement Core Data (et non depuis le début du projet).
Si vous utilisez NSPersistentContainer, il est disponible à partir de iOS 10 + . Vous devez modifier la cible> Général> Informations de déploiement> Cible de déploiement sur 10.0+.
Ensuite, Produit> Clean & Build. Ça a marché.
Les réponses données ci-dessus sont exactes, mais si elles ne fonctionnent pas, alors:
Cela a résolu mon problème. J'espère que cela t'aides.
Dans mon cas, j'avais renommé le répertoire dans lequel mon fichier .xcdatamodel se trouvait, de sorte que l'ancienne entrée de nom de fichier n'était pas supprimée de la phase Compile Sources
de ma cible.
Tout ce que je devais faire était de supprimer l'ancien fichier de la phase Compile Sources
en recherchant xcdatamodeld
et en supprimant l'entrée appropriée (désormais non pertinente ...) dans l'onglet Build Phases
de ma cible:
Une fois que vous avez terminé, assurez-vous que votre fichier .xcdatamodeld actuel est ajouté à votre cible. Tu fais cela:
a) En cliquant sur le fichier dans le Project Navigator de Xcode (colonne de gauche -> première icône):
b) Et cochez ensuite les cases de toutes les cibles dont vous souhaitez que ce fichier fasse partie, dans l'inspecteur de fichiers de Xcode (colonne droite -> première icône), sous Target Membership
:
Dans mon cas, j'ai essayé de construire un lecteur externe . Copiez le projet sur le lecteur interne, et cela fonctionnera.