web-dev-qa-db-fra.com

Erreur du module introuvable lors de l'importation du pod Swift dans un projet Objective-C

J'ai un projet existant qui est écrit en Objective-C. Je souhaite utiliser la bibliothèque de cartes iOS de Daniel Gindi , qui se trouve dans Swift, dans ce projet. Comment puis-je atteindre cet objectif?

importer le cadre Swift dans un projet objective-c est lié, mais dans mon cas, je me sers de la bibliothèque en l’installant via Cocoapods comme indiqué ici .

Dans cette question, il est au moins capable d'importer l'en-tête, mais dans mon cas, je ne le peux pas.

étape 1: Créer un projet à vue unique Objective-C.

étape 2: Créez un fichier podfile et ajoutez les lignes suivantes -

use_frameworks!
pod 'Charts'

étape 3: Installez le pod

Étape 4: Essayez d’importer les graphiques dans ViewController.h avec @import Charts, mais cela donne une erreur à ce stade. L'erreur est - Module Charts not found

9
Rohan Sanap

Dans mon projet existant, j'ai #include Charts-Swift.h dans le fichier main.m de mon projet et cela a résolu le problème. @import Charts fonctionnait parfaitement maintenant. Cela a été fait en suivant les instructions écrites dans la documentation Apple ici.

J'ai fait un nouveau projet et essayé la réponse d'Anni S , cette fois, j'ai construit le projet avec cmd+B avant d'écrire une instruction d'importation et cela a également fonctionné. J'imagine qu'il est nécessaire de le construire une fois après avoir installé pod et avant d'importer n'importe quel module.

10
Rohan Sanap

J'ai essayé la même chose que ce que vous avez mentionné dans le commentaire, mais je ne comprenais pas l'erreur que vous aviez. Mon projet est simplement construit et exécuté. Les étapes que j'ai suivies:

  1. Créer un projet à vue unique Objective-C.
  2. Ajout de 'Podfile' au niveau du répertoire du projet (Podfile doit être au niveau du fichier xcodeproject) et ajoutez les lignes suivantes
use_frameworks!
pod 'Charts'
  1. Fermer xcodeproject
  2. Accédez au répertoire du projet et exécutez la commande 'pod install' à partir du terminal.
  3. Ouvrir l’espace de travail dans le fichier .xcworkspace
  4. Importer un fichier de graphiques dans le contrôleur de vue tel que

#import "ViewController.h" @import Charts;

5
Anni S

J'ai trouvé la raison pour laquelle cela fonctionne pour un nouveau projet, mais pour un projet existant.

Dans les paramètres du projet, supprimez la valeur de la propriété Other Linker Flags.

C'est le cas le plus fréquenté par la plupart des développeurs.

0
Harri Westman