Где находится сценарий запуска и сборки в Xcode?
Чтобы настроить Carthage, в документации сказано, что вам нужно добавить Run Script.
На вкладке настроек "Фазы сборки" целевого приложения нажмите значок "+" и выберите "Фаза запуска нового скрипта". Создайте сценарий запуска, в котором вы указываете свою оболочку (например, bin/sh), добавьте следующее содержимое в область сценария под оболочкой:
/usr/local/bin/carthage copy-frameworks
и добавьте пути к фреймворкам, которые вы хотите использовать в разделе "Входные файлы", например:
$(SRCROOT)/Carthage/Build/iOS/Box.framework $(SRCROOT)/Carthage/Build/iOS/Result.framework $(SRCROOT)/Carthage/Build/iOS/ReactiveCocoa.framework
Этот скрипт работает вокруг ошибки отправки в App Store, вызванной универсальными двоичными файлами, и обеспечивает копирование необходимых файлов, связанных с битовым кодом, и dSYM при архивировании.
Однако я больше не могу найти вкладку "Фазы сборки" или "Выполнить скрипт" в поиске "Настройки сборки". Упоминание о выпуске Xcode 8
Xcode 8 обеспечивает полностью переписанную поддержку AppleScript. Новый скрипт-словарь предоставляет возможность автоматизировать рабочие процессы XCode.
Означает ли это, что больше нет Run Script? Я посмотрел на AppleScript, но, честно говоря, он выглядит чрезвычайно сложным. Нужно ли изучать AppleScript только для того, чтобы добавить простую строку, которую я использовал в Xcode?
/usr/local/bin/carthage copy-frameworks
3 ответа
Вы можете настроить различные этапы сборки для выполнения задач при создании цели.
Чтобы просмотреть этапы сборки, откройте редактор проекта и щелкните «Фазы сборки». Чтобы добавить фазы сборки, которые не отображаются в редакторе, нажмите кнопку «Добавить» (+) и выберите фазу сборки во всплывающем меню.
Редактор проекта
Используйте редактор проекта для просмотра и редактирования вашего проекта и целевых параметров, таких как параметры сборки, целевые архитектуры и характеристики подписи кода. В главном окне щелкните значок файла () в области навигатора и выберите проект ниже. Редактор проекта появится справа от навигатора. Выберите проект или цель во всплывающем меню и используйте вкладки для переключения на различные типы настроек.
Скрипт запуска:
Запускает указанный сценарий оболочки в процессе сборки. Этот сценарий может ссылаться на настройки сборки из цели, например $(SRCROOT), каталог, содержащий исходные файлы цели. Эта фаза сборки также позволяет предоставить список входных и выходных файлов. Сценарий всегда запускается, когда не предоставлены входные и выходные файлы. При наличии входных и выходных файлов сценарий запускается только в том случае, если он никогда ранее не запускался, один из входных файлов был изменен или один из выходных файлов отсутствует. Эта фаза сборки может быть включена для всех сборок или только во время сборки установки и может быть добавлена несколько раз для каждой цели.
Сопровождающие Карфагена обновили README, необходимо также добавить выходные пути, чтобы предотвратить полезное копирование фреймворков. Я выпустил простой скрипт под названием Carting для автоматизации этих шагов.