Что такое путь сборки теста Xcode?

В Xcode нажатие ⌘B (цель сборки) может собрать проект, он сгенерирует сборку по пути ~/Library/Developer/Xcode/DerivedData/{AppName}-{hash}.

  • Как я мог узнать весь путь сборки (с хеш-значением) с помощью скрипта? Могу ли я найти этот путь в моем .xcodeproj?
  • Когда я использую ⇧⌘U (только тестовая сборка), где я могу найти тестовую сборку?
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
723
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Пути сборки можно контролировать с помощью BUILT_PRODUCTS_DIR, PROJECT_TEMP_DIR , CONFIGURATION_BUILD_DIR и CONFIGURATION_TEMP_DIR и т. д. https://help.apple.com/xcode/mac/11.4/#/itcaec37c2a6

Нет необходимости извлекать их из какой-либо закрытой спецификации формата файла.

Если вам необходимо это сделать, запустите временный репозиторий git с файлом xcodeproj. Соверши это. Внесите изменения в одну из переменных, а затем запустите git diff.

  1. Как я мог узнать весь путь сборки (с хеш-значением) с помощью скрипта?
  1. Перейдите в ту же папку, где находится ваш проект или рабочая область.
  2. Беги xcodebuild -showBuildSettings
  3. Может потребоваться добавить правильную схему или цель. Смотрите man xcodebuild

См. пример ниже, чтобы найти по сценарию

  1. Когда я ... строю только для тестовой цели, где я могу найти тестовую целевую сборку?

Он будет находиться в той же папке с именем, похожим на <Test_Target_Name>-Runner.app. Это полезно, так как вы можете использовать сервисы тестирования облачных устройств.


# This example works with Xcode project with a single scheme
# Echo to stdout
xcodebuild -showBuildSettings
xcodebuild -showBuildSettings | grep CONFIGURATION_BUILD_DIR

# save to a variable for use in your script
#   A little brutal, so I'm open to other ways to do this.
CONFIGURATION_BUILD_DIR=$(xcodebuild -showBuildSettings 2> /dev/null | grep CONFIGURATION_BUILD_DIR | sed 's/[ ]*CONFIGURATION_BUILD_DIR = //')
echo $CONFIGURATION_BUILD_DIR

Если вы используете серверные боты Xcode

cd ${XCS_PRIMARY_REPO_DIR}
xcodebuild -showBuildSettings

Пример вывода:

/Users/roblabs/Library/Developer/Xcode/DerivedData/openmaptiles-ios-demo-eectbiabcmhajpdbcoqnaipiaqpd/Build/Products/Release-iphoneos


Как отмечено в https://stackoverflow.com/a/57512068,

Значение по умолчанию: $(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)


Дополнительную документацию по свойствам параметров сборки см. в Справочнике по параметрам сборки на сайте developer.apple.com. Ссылка, указанная @puio, также полезна.

Другие вопросы по теме