Ця відповідь стосується випадку використання, коли, можливо, у вас вже є код Objective-C, який викликає класи Swift, і тоді ви починаєте отримувати цю помилку.
Як виправити проблему
Наступні кроки врешті вирішили всі проблеми для мене. Я читав вище, коли хтось згадував про "курку і яйце", і саме ця концепція привела мене до цієї процедури. Цей явний процес показує, що потрібно видалити будь-який код Objective-C, що посилається на класи Swift, поки не буде створено заголовок.
- Прокоментуйте #import "ProductModuleName-Swift.h" у вашому файлі реалізації Objective-C
- Прокоментуйте будь-які посилання у файлі реалізації Objective-C до класів Swift
- Очистити та побудувати
- Вирішіть усі помилки / попередження
- Видаліть коментар до #import "ProductModuleName-Swift.h"
- Очистити та створити (успішно або виправити будь-які інші помилки, переконайтесь, що ви не посилаєтесь на будь-які класи Swift в Objective-C на даний момент . Якщо це тимчасово прокоментуйте це)
- Переконайтесь, що "ProductModuleName-Swift.h" генерується Cmd-натисканням
на назву класу оператора #import "ProductModuleName-Swift.h"
- Видаліть коментар до коду, що посилається на класи Swift, у файл реалізації Objective-C.
- Очистити та скласти як звичайне ("ProductModuleName-Swift.h" повинен бути створений, і ваш об'єктивний-C код, що посилається на класи Swift, може використовуватися як звичайний)
Nota Bene: Відповіді про зміну пробілів на підкресленнях та Визначає модуль YES, як зазначено вище, все ще застосовується при виконанні цього процесу, як і правила, визначені в Документації Apple .
Дозвільний шлях заголовка
З однієї помилки, файл ProductModuleName-Bridging-Header.h не був знайдений в процесі збирання. Цей факт породив помилку
<невідомо>: 0: помилка: мостовий заголовок '/Users/Shared/Working/abc/abc-Bridging-Header.h' не існує
Більш детальна перевірка помилки показала, що файл ніколи не існуватиме в описаному місці, оскільки він насправді знаходився в ( неправильний шлях )
'/Users/Shared/Working/abc/abc/abc-Bridging-Header.h'. швидкий пошук налаштувань збирання цілі / проектів, щоб зробити виправлення вручну, і файл abc-Swift.h знову створився автоматично.