Когда я создаю новый проект OS X "Game" с помощью набора Sprite Kit и устанавливаю точку останова в любом месте, я могу видеть значения переменных просто:
Затем я меняю код, чтобы импортировать свою собственную фреймворк (TilemapKit), которая представляет собой чистую структуру Objective-C:
import SpriteKit
import TilemapKit
class GameScene: SKScene {
override func didMoveToView(view: SKView) {
print("dang!")
}
}
Никаких других изменений не сделано. Я даже не использую ни один из кода TilemapKit (пока). Когда срабатывает точка останова, я вижу следующее:
Весь проект перестает быть отлаживаемым, если отслеживать значения переменных. Такое поведение совершенно согласуется. Без импорта структуры я могу снова отлаживать.
Поскольку я нахожусь в предварительном просмотре developerWorks Xcode 7 beta (7A121l) и OS X 10.11, я знаю, что это может быть просто (временная) ошибка.
Плитки командной строки настроены на использование версии Xcode 7.0 версии. Я попытался включить модули в целевой среде, убедитесь, что цель развертывания одинакова (10.11), отключена выделение символов. Я добавил заголовок Bridging Header и #imported структуру TilemapKit в нем (удаление импорта Swift в этом случае все равно даст мне не отлаживаемое приложение, поэтому, похоже, не имеет значения, как и где я импортирую фреймворк).
Есть ли у кого-нибудь предложение о том, что может вызвать такое поведение и как я могу его исправить - или, по крайней мере, как я мог бы сузить проблему?
Возможно ли, что виновник будет связан с проектом по сравнению с настройками построения каркаса? Нужно ли мне включить что-то в проекте приложения, чтобы сделать его совместимым с платформами ObjC? (Я уже получил -ObjC в других флагах Linker)
UPDATE:
Я запустил po self
в консоли отладки и нашел это уведомление:
<built-in>:3:6: error: module 'TilemapKit' was built in directory '/TilemapKit.framework' but now resides in directory './TilemapKit.framework'
#define __clang_major__ 7
^
missing required module 'TilemapKit'
Debug info from this module will be unavailable in the debugger.
Как изменилась директория сборки фреймов? И почему это важно и как это исправить?
PS: тот же фреймворк в новом приложении ObjC можно отлаживать просто отлично.