Сборка встроенных фреймворков Swift при архивации

В моем проекте я добавил быструю структуру в качестве подпроекта. Он отлично работает, когда я запускаю симулятор и устройство. Но когда я попытался архивировать основной продукт, он не с ошибкой:
"/Users/mac/Library/Developer/Xcode/DerivedData/ProductName-bhtbyknuwzpjjwaadaqiytxtzypo/Build/Intermediates/ArchiveIntermediates/ProductName/BuildProductsPath/Release-iphonesimulator/MyFramework.framework: Нет такого файла или каталога"
Я искал этот путь, и я закончил в папку «/ Users / mac / Library / Developer / Xcode / DerivedData / ProductName-bhtbyknuwzpjjwaadaqiytxtzypo / Build / Intermediates / ArchiveIntermediates / ProductName / BuildProductsPath», которая имеет только три подпапки:

  • Выпуск-iphoneos
  • Освободить универсальным
  • SwiftSupport

и нет папки «Release-iphonesimulator» .

Вот сценарий сборки рамки:

set -e set +u # Avoid recursively calling this script. if [[ $SF_MASTER_SCRIPT_RUNNING ]] then exit 0 fi set -u export SF_MASTER_SCRIPT_RUNNING=1 # Constants SF_TARGET_NAME=${PROJECT_NAME} UNIVERSAL_OUTPUTFOLDER=${BUILD_DIR}/${CONFIGURATION}-universal # Take build target if [[ "$SDK_NAME" =~ ([A-Za-z]+) ]] then SF_SDK_PLATFORM=${BASH_REMATCH[1]} else echo "Could not find platform name from SDK_NAME: $SDK_NAME" exit 1 fi #if [[ "$SF_SDK_PLATFORM" = "iphoneos" ]] #then #echo "Please choose iPhone simulator as the build target." #exit 1 #fi IPHONE_DEVICE_BUILD_DIR=${BUILD_DIR}/${CONFIGURATION}-iphoneos # Build the other (non-simulator) platform xcodebuild -project "${PROJECT_FILE_PATH}" -target "${TARGET_NAME}" -configuration "${CONFIGURATION}" -sdk iphoneos BUILD_DIR="${BUILD_DIR}" OBJROOT="${OBJROOT}" BUILD_ROOT="${BUILD_ROOT}" CONFIGURATION_BUILD_DIR="${IPHONE_DEVICE_BUILD_DIR}/arm64" SYMROOT="${SYMROOT}" ARCHS='arm64' VALID_ARCHS='arm64' $ACTION xcodebuild -project "${PROJECT_FILE_PATH}" -target "${TARGET_NAME}" -configuration "${CONFIGURATION}" -sdk iphoneos BUILD_DIR="${BUILD_DIR}" OBJROOT="${OBJROOT}" BUILD_ROOT="${BUILD_ROOT}" CONFIGURATION_BUILD_DIR="${IPHONE_DEVICE_BUILD_DIR}/armv7" SYMROOT="${SYMROOT}" ARCHS='armv7 armv7s' VALID_ARCHS='armv7 armv7s' $ACTION # Copy the framework structure to the universal folder (clean it first) rm -rf "${UNIVERSAL_OUTPUTFOLDER}" mkdir -p "${UNIVERSAL_OUTPUTFOLDER}" cp -R "${BUILD_DIR}/${CONFIGURATION}-iphonesimulator/${PROJECT_NAME}.framework" "${UNIVERSAL_OUTPUTFOLDER}/${PROJECT_NAME}.framework" # Smash them together to combine all architectures lipo -create "${BUILD_DIR}/${CONFIGURATION}-iphonesimulator/${PROJECT_NAME}.framework/${PROJECT_NAME}" "${BUILD_DIR}/${CONFIGURATION}-iphoneos/arm64/${PROJECT_NAME}.framework/${PROJECT_NAME}" "${BUILD_DIR}/${CONFIGURATION}-iphoneos/armv7/${PROJECT_NAME}.framework/${PROJECT_NAME}" -output "${UNIVERSAL_OUTPUTFOLDER}/${PROJECT_NAME}.framework/${PROJECT_NAME}" 

Примечание. Я прокомментировал следующую строку, потому что архивирование разрешено только с помощью платформы sdk устройства (а не симулятора)

 if [[ "$SF_SDK_PLATFORM" = "iphoneos" ]] then echo "Please choose iPhone simulator as the build target." exit 1 fi 

Interesting Posts

NSFetchedResultsController sectionIndexTitles неправильно, а не английские буквы

XCode – неопределенные символы для архитектуры armv7 arm64

Расширенные перечисления Java в Swift

этот класс не является ключевым значением, совместимым с кодированием для ключевого представления. '

удалить объект из NSArray

Скрыть UIProgressView после того, как выборка для PHAsset завершена, и прогресс завершен

Вставить заголовок заголовка UITableView сверху при создании заголовка в раскадровке

Заголовок заголовка заголовка сверху с прокруткой UICollectionViewFlowLayout, установленной на горизонтальную

UIWebView – Когда (или как) CFData освобождается?

Как изменить заголовок для UITableViewRowAction

Почему Apple Matrix Multiplication Пример требует заполнения C

при использовании CMDeviceMotion, если устройство находится прямо (pitch = 90), это действительно неустойчиво. В любом случае, чтобы решить это?

Обработка UIKeyboardWillShowNotification, чтобы клавиатура уже была нажата, когда контроллер отображения нажат?

willMoveToWindow вызывается дважды

Swift Generics & Upcasting

Давайте будем гением компьютера.