Ответ 1
Оказалось, что я набрал имя файла, правильное имя было "FILE.h" вместо "File.h". Предупреждение появилось из-за скорого APFS для macOS.
Я обновился до Xcode 8.3 и Swift 3.1 и получил это предупреждение в моем заголовочном файле, ссылаясь на заголовочный файл Objective-C:
Не переносимый путь к файлу "File.h"; указанный путь отличается в случае с именем файла на диске
Как я могу это решить?
Оказалось, что я набрал имя файла, правильное имя было "FILE.h" вместо "File.h". Предупреждение появилось из-за скорого APFS для macOS.
В моем случае имя папки проекта !! !! не соответствует пути заголовка моста.
Я изменил
"проект/project-Bridging-Header.h"
в
"Project/project-Bridging-Header.h"
Проверено на Xcode 9.3
Еще одна причина, по которой я столкнулся, заключалась в том, что проект библиотеки некорректно импортировал себя. Например, для заданных проектов Main и Library, Main будет импортировать библиотеку с:
#import "Library/Library.h"
Если библиотека пытается использовать тот же импорт, появится предупреждение о непортативном пути. Удаление части пути - это легко исправить:
#import "Library.h"
Лучшее решение - импортировать из библиотеки определенные компоненты, которые нужны библиотеке:
#import "Widget.h"
#import "NSString+Library.h"