web-dev-qa-db-fra.com

Xcode n'a pas pu générer de représentation rapide pour mon propre framework

J'ai créé un framework que je souhaite utiliser dans mon application OS X. Depuis la mise à jour vers Xcode 7 sur El Capitan, lorsque j'essaie de faire un clic droit sur l'instruction import, Xcode passe à la vue suivante.

 enter image description here

Comment puis-je obtenir Xcode pour afficher correctement la représentation Swift? Je l'ai déjà fait auparavant et ma solution consistait à recréer chaque fichier de projet que je ne voulais pas refaire.

23
David Skrundz

D'après mon expérience, il existe deux causes possibles à ce problème. La première est que votre cadre de travail est introuvable. Pour résoudre ce problème, vous devez accéder à Paramètres de construction de la cible et ajouter un chemin d'accès à Chemins de recherche dans la structure soit un absolu:

/Users/{user}/path-to-framework-parent-directory

ou par rapport au répertoire du projet:

$(PROJECT_DIR)/path-to-framework-parent-directory

Une autre cause possible est que le chemin d'accès à votre infrastructure contient un espace. J'ai constaté qu'il importait peu que vous essayiez d'y échapper avec une barre oblique inverse ../Project\ Name/frameworks ou que vous preniez l'intégralité du chemin entre guillemets "../Project Name/frameworks". Le résultat serait que SourceKit ne pourrait pas charger le module. 

Notez que $(PROJECT_DIR) pourrait s’étendre sur un chemin contenant un espace et provoquerait la même erreur. Cela ressemble donc à un bogue dans Xcode/SourceKit (j'ai essayé le dernier Xcode 7.2-beta3 et le bogue est toujours là).

Mon référentiel était sur le deuxième disque dur /Voluems/Macintosh HD/Repos. Je viens de renommer le disque dur en HD, le chemin ressemble donc à /Volumes/HD/Repos et le problème a disparu.

36
Max S.

Меня тоже была эта проблема, и другие решения не работали. Наконец понял то в моем случае:

в имени цели также не должно быть пробела

Тобы переименовать то:

  • Зайдите в настройки вашего проекта
  • Разверните столбец списка целей слева, если его там еще нет
  • Нажмите на соответствующую цель один раз (или нажмитеEnterили жеTabкогда он выбран) и введите новое имя без пробела
1
Silvan Mosberger

La réponse de Max S. m'a orientée dans la bonne direction, mais j'utilisais l'option 'récursive' pour mon chemin de structure. 

Pour que les choses fonctionnent, je devais explicitement ajouter un chemin d'accès directement au cadre parent direct du cadre en question (par opposition à un chemin vers l'un de ses répertoires supérieurs avec le jeu d'options 'récursif').

HTH

1
Oliver Pearmain

Courir Produit-> Nettoyer, Produit-> Construire est ce qui a fonctionné pour moi.

1
myQwil

Bizarrement, le simple fait de changer le nom de mon dossier de 'Developer' à 'Development' a résolu le problème. 

0
DardanM