Jonathan suggère ici: Xcode inclut les fichiers .xib qui ont été supprimés! que nettoyer toutes les cibles et vider les caches résoudra le problème avec Xcode, y compris les fichiers .xib supprimés, mais je ne trouve pas de moyen de vider le cache dans Xcode 4.
Comment faire cela dans Xcode 4?
Réponses:
Commande-Option-Maj-K pour nettoyer le dossier de construction. Encore mieux, quittez Xcode et nettoyez manuellement ~ / Library / Developer / Xcode / DerivedData . Supprimez tout son contenu car il y a un bogue où Xcode exécutera une ancienne version de votre projet qui se trouve quelque part. (Xcode 4.2 vous montrera le dossier des données dérivées: choisissez Fenêtre> Organiseur et passez à l'onglet Projets. Cliquez sur la flèche droite à droite du nom du dossier des données dérivées.)
Dans le simulateur, choisissez iOS Simulator> Réinitialiser le contenu et les paramètres.
Enfin, pour être complet, vous pouvez supprimer le contenu des dossiers / var / ; une certaine mise en cache s'y produit également.
AVERTISSEMENT: la suppression des dossiers / var / peut entraîner des problèmes et vous devrez peut-être réparer ou réinstaller votre système d'exploitation après cela.
EDIT: Je viens d'apprendre que si vous avez peur de vous attaquer à / var / dossiers / vous pouvez utiliser la commande suivante dans le terminal pour supprimer de manière plus ciblée:
EDIT: Pour certains problèmes liés à Swift, j'ai trouvé utile de supprimer ~ / Library / Caches / com.apple.dt.Xcode . Vous perdez beaucoup lorsque vous faites cela, comme vos copies de rechange des ensembles de documents de documentation téléchargés, mais cela peut en valoir la peine.
la source
Command-Option-Shift-K devrait le faire. Sinon, allez dans le menu du produit, appuyez sur la touche d'option, maintenant l'option "Nettoyer" changera en "Nettoyer le dossier de construction ..." sélectionnez cette option.
la source
En plus de faire ce qui suit, vous pouvez rencontrer ce problème si les fichiers de Storyboard de votre application sont localisés. Tout d'abord, effectuez chacune de ces actions:
DerivedData
dossier dans ~ / Library / Developer / Xcode / DerivedDataCe qui a finalement fonctionné pour moi a été de régénérer les fichiers de localisation du storyboard et de supprimer la localisation en anglais (ce qui n'était pas nécessaire car les paramètres régionaux de base sont en anglais). Pour recharger vos chaînes de Storyboard, consultez cette réponse sur StackOverflow .
J'avais remarqué que les parties non textuelles de mon Storyboard étaient mises à jour, mais pas le texte localisé. Si vous avez une localisation dans votre application, je vous recommande de vérifier que vos localisations sont mises à jour (même si ce sont des
.strings
fichiers).la source
/var/folders/
peut entraîner de graves problèmes et entraîner la réinstallation complète d'OSx à partir de la console de récupération!J'ai trouvé un autre moyen en plus de la commande + option + shift + K. Dans XCode 4.2, il existe un organisateur qui peut être ouvert à partir de l'icône en haut à droite. Vous pouvez nettoyer toutes les archives et les options de projet enregistrées à partir de là. Cela a aidé ma situation (je voyais d'anciens fichiers supprimés dans le mainBundle).
la source
J'ai arraché les cheveux de ma tête parce que je pensais que j'avais le même problème. Lors de la création de l'application, je n'ai pas obtenu le même résultat sur mon iPhone que sur le simulateur.
Le problème était que j'avais en quelque sorte fait une version localisée du fichier MainStoryboard.storyboard. Donc, quand j'ai exécuté l'application sur mon téléphone, elle a montré la version danoise ... et le simulateur a montré la version anglaise.
Ouais je suis nouveau! :)
la source
Pour supprimer toutes les données dérivées et le cache de module
/var/folders
utilisé, utilisez ce petit script ruby .Cela vient de résoudre une
fatal error: malformed or corrupted AST file: 'Unable to load module "/var/folders/
erreur pour moi.la source
J'ai eu quelques problèmes avec le crash de Xcode 5.1 sur moi, lorsque j'ai ouvert la fenêtre doc.
Je ne suis pas sûr de la cause de cela, car je mettais également à jour des docsets, alors que j'ouvrais la fenêtre.
Eh bien, dans Xcode 5, le répertoire des modules réside maintenant dans le dossier de données dérivées que je n'ai pas supprimé pour des raisons évidentes. J'ai supprimé le contenu de ~ / Library / Developer / Xcode / DerivedData / ModuleCache et le ~ / Library / Preferences / com.apple.Xcode.plist et tout semble alors fonctionner, après avoir redémarré Xcode.
la source
Lorsque vous utilisez un "modèle de données", il existe des options dans l'inspecteur pour générer des classes, pour moi, c'était le cas car il y avait déjà une classe avec le nom existant.
Codegen: l'a résolu pour moi.
la source
Mon "DerivedData" avec Xcode 10.2 et Mojave était ici:
MacHD / Users / [MyUser] / Library / Developer / Xcode
la source
Vous devez faire attention au fichier xib. J'ai essayé tout ce qui précède et rien n'a fonctionné pour moi. J'utilisais des boutons UIB personnalisés définis dans le xib, et j'ai réalisé que cela pouvait être lié au fait que j'avais attribué des attributs qui ne changeaient pas par programme. Si vous y avez défini des images ou du texte, supprimez-les. Quand je l'ai fait, mes changements de programme ont commencé à prendre effet.
la source
Voici ma solution de script shell , qui supprime les données dérivées et nettoie les actifs mis en cache d'un projet, pour Xcode 4, 5 et 6.
Parfois, simplement appeler rm -rf dans le répertoire Derived Data laisse un ou deux fichiers persistants, mais mon script boucle jusqu'à ce que tous les fichiers soient supprimés.
la source
J'ai essayé presque tout mais je n'ai pas pu aider, ce qui m'a aidé à désactiver SIP (Protection de l'intégration du système) n cela fonctionne, je ne sais pas ce qui se passe quand et comment mais le fichier système se confond quelque part et provoque cela ... bien qu'il puisse y avoir des risques à désactiver cela évidemment
Voici comment
1.Allumez votre Mac et maintenez les touches [commande] + [R] pour accéder à la partition de récupération.
2.Dans la partition de récupération, cliquez sur Utilitaires dans la barre de menus, puis sélectionnez Terminal.
3.Saisissez la commande suivante dans Terminal et appuyez sur Entrée pour l'exécuter: csrutil disable
4.Une fois la commande exécutée, quittez le terminal et redémarrez le Mac. Lorsque vous vous reconnectez à OS X, SIP sera désactivé.
la source