Ce problème me rend vraiment fou. Xcode recherche un storyboard dans mon projet dans un endroit différent de celui-ci. J'ai essayé de supprimer le fichier, de l'ajouter à nouveau, de nettoyer le projet, etc. mais je n'ai pas eu de chance.
C'est l'erreur.
cd /Users/fmartin91/Projects/loovin/loovin-ios
setenv IBSC_MINIMUM_COMPATIBILITY_VERSION 7.0
setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
setenv XCODE_DEVELOPER_USR_PATH /Applications/Xcode.app/Contents/Developer/usr/bin/..
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/ibtool --errors --warnings --notices --minimum-deployment-target 7.0 --output-format human-readable-text --compile /Users/fmartin91/Projects/loovin/loovin-ios/Build/Products/Debug-iphonesimulator/loovin.app/Base.lproj/LOOVProductIndex.storyboardc /Users/fmartin91/Projects/Base.lproj/LOOVProductIndex.storyboard
/* com.Apple.ibtool.errors */
/Users/fmartin91/Projects/Base.lproj/LOOVProductIndex.storyboard:
error: Interface Builder could not open the document
"LOOVProductIndex.storyboard" because it does not exist.
Je pourrais corriger ce bug en tuant ibtoold
:
$ Sudo killall -9 ibtoold
Pourquoi ibtool a-t-il besoin d'un démon?
Votre scénario n’est pas dans NSBundle mainbundle. Ce problème est probablement dû à un problème de "Copier les ressources du paquet" dans "Les phases de construction".
Pour corriger, vérifiez si votre fichier de story-board est dans "Copier les ressources de l'ensemble" pour toutes les cibles. Dans le navigateur de projet, sélectionnez le fichier de projet, sélectionnez l’onglet Étapes de construction et vérifiez-le.
J'ai eu un problème très similaire et il a fallu quelques heures pour le résoudre. Clairement, xcode s'est verrouillé dans un état étrange que l'explorateur de projet puisse voir le fichier xib alors que la compilation ne le pouvait pas. Finalement, cela a été résolu lorsque j'ai changé l'emplacement dans l'inspecteur de fichier de Relatif à groupe à Relatif au projet. Je l’ai obtenue en comparant le fichier project.pbxproj dans un éditeur de texte standard pour rechercher des indices.
Cela m'est arrivé après une fusion de git. J'ai changé certains fichiers de storyboard localisés d'un projet à un autre et Xcode semble continuer à rechercher le fichier dans l'ancien projet.
Ma solution était:
J'ai rencontré le même problème et voici comment je l'ai résolu:
Pour moi, j'utilise xcode 10, Cliquez sur le nom de votre projet (icône bleue à gauche)> Build Phases> Sous Copy Bundle Resources
Recherchez le fichier, supprimez les doublons s’il y est. Nettoyer le projet et recommencer
J'ai rencontré le même problème lors du déplacement du projet sur un autre ordinateur. J'ai suivi les étapes ci-dessous pour résoudre ce problème:
Je viens de rencontrer ce problème sous Xcode 9.2. J'avais copié mes fichiers d'un ordinateur à l'école sur Google Drive, puis je les avais téléchargés à la maison.
Quand j’ai ouvert les fichiers à la maison, on me répétait main.storyboard et le storyboard de lancement n’existait pas. Les deux fichiers de scénarimage s'affichaient en xml, ils existaient donc clairement, mais même en cliquant avec le bouton droit de la souris sur "ouvrir en tant que", rien ne se produisait. Après beaucoup de dépannage, j'ai trouvé une solution qui fonctionnait pour moi.
SOLUTION:
Ouvrez votre dossier de projet, puis le dossier suivant portant le même nom que votre projet. Ouvrez Base.lproj et vous verrez vos deux storyboards au format xml. Copiez les deux fichiers, collez-les dans le même dossier, supprimez le fichier .xml et confirmez la modification en .storyboard. Faites cela pour les deux fichiers et vous êtes prêt!
Dans mon cas, j'ai constaté que le storyboard était placé dans un groupe qui faisait référence à un dossier qui n'existait pas dans le panneau "Identité et type".
Supprimer ce groupe et le story-board, puis l'ajouter en faisant référence à un dossier existant résolvent le problème pour moi.
Lorsque vous téléchargez votre fichier sur Google Drive sans Zip, il ajoute automatiquement l'extension .storyboard
à .xml
. Par conséquent, lorsque vous le téléchargez, il est évident que le fichier n'existe pas.
Pour résoudre ce problème, allez à la:
[dossier du projet]> [dossier du projet]> [Base.lproj]
Il y aurait un type de fichier d'extension .storyboard.xml que vous auriez à renommer avec l'extension .storyboard
. Et par conséquent votre travail est terminé.
Guide visuel de résolution des erreurs de story-board:
Aller aux phases de construction> Copier les ressources du bundle> Vérifier le storyboard pour lequel vous obtenez une erreur> Il devrait s'afficher comme flou> Si OUI, supprimez sa référence et ajoutez-la à nouveau> Compilez à nouveau.
Je viens d’expérimenter cela et je l’ai corrigé en redémarrant l’ordinateur. J'ai découvert plus à ce sujet, cependant. Dans mon cas, mes scripts ibtool ne fonctionnaient pas, donnant des erreurs de fichier introuvable, tout comme les vôtres. Cependant, j'ai remarqué un changement de comportement lorsque je les ai exécutés sous Sudo:
2013-09-20 20: 49: 40.339 Cocoa Touch Tool [58454: 303] D'Interface Builder: répertoire de base de l'utilisateur dans Fichier: /// var/root/Library/Application% 20Support /iPhone%20Simulator/User/ n'est pas disponible. Les domaines d'utilisateur seront volatiles.
Les commandes suivantes échoueraient ou reviendraient sans rien faire. Alors! ibtool/Interface Builder/quel que soit, utilise en quelque sorte un autre service de lancement pour s'exécuter lui-même, avec un autre nom d'utilisateur ou privilèges.
Se pourrait-il que j’ai installé des mises à jour d’outil pour Xcode 5.0 et que tout ce processus serveur ait été bousillé? Oui ça pourrait :)
J'ai résolu ceci en faisant ceci:
Ouvrez votre dossier de projet Xcode dans le Finder, puis recherchez le fichier que vous ne pouvez pas ouvrir.
Faites glisser ce fichier dans votre chemin de fichier dans Xcode Project (Inside Xcode App) comme ceci.
Thick "Copier l'élément si nécessaire" et choisissez "Créer des références de dossier" puis cliquez sur Terminer.
Redémarrer Xcode
J'ai connu la même situation avec Xcode 7 bêta 5. Le redémarrage de mon Mac a fait l'affaire.
Je pourrais résoudre mon problème, je ne sais vraiment pas comment je l’ai fait, mais j’ai essayé de nettoyer et de construire le projet un milliard de fois, j’espère que cela pourra aider tout le monde.