почему Xcode перекомпилирует весь мой Obj C в каждой сборке? - PullRequest
1 голос
/ 16 апреля 2020

У меня есть проект Swift / Obj C. Xcode (11.4.1) перестраивает все мои файлы Obj C в каждой сборке. К счастью, их не так много, но это все равно замедляет меня.

  • Если я редактирую один файл Obj C или Swift, все файлы Obj C перестраиваются.
  • Мой Obj C никогда не вызывает Swift, и я не импортирую заголовок MyProject-Swift.h (заголовок интерфейса).
  • Если я редактирую один файл Swift, компиляция Swift только перестраивает этот файл.
  • Кажется, нет способа отключить заголовок интерфейса. Я попытался установить Objective-C Generated Interface Header Name на пустое значение, но это не имело значения.
  • Код Obj C вызывается из Swift.
  • Swift Compilation Mode установлен на Incremental.
  • Отключение Find Implicit Dependencies не помогает.

Потенциальные решения:

  • Поместите все файлы Obj C в каркас (кажется немного тяжелым и брутто).
  • Переписать объект C в Swift.

ОБНОВЛЕНИЕ

В другом проекте (также Swift / Obj C, со значительно большим количеством Obj C), перекомпиляция каждого файла Obj C не происходит . Так что это может показаться специфическим для моего проекта.

1 Ответ

0 голосов
/ 17 апреля 2020

Это было просто, что XCode сообщал «Все» задачи сборки вместо «Недавних»:

Xcode build results

После переключения на Недавние (как было другой проект), он показывает только файлы, которые он перекомпилировал.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...