Как скомпилировать проект iOS из командной строки

Я хочу собрать / скомпилировать рабочее пространство с Cocoapods на нем, но без:

  • Архивирование.
  • Необходимо настроить учетные данные или файлы pem.

Что-то вроде:xcodebuild assemble

Я хочу знать, если код компилируется, но не генерирует архив или развернутый артефакт.

Я пробовал fastlane/gym, но он пытается создать архив.

1 ответ

Решение

Использование xcodebuild

Вы можете скомпилировать проект с помощью следующей команды:

xcodebuild <path to project> -scheme <scheme name> build

Поскольку вы используете cocoapods, вы должны скомпилировать с использованием рабочей области, а не проекта, например:

xcodebuild -workspace <path to workspace file> -scheme <scheme name> build

Если swift-версия не установлена ​​в цели cocoapods, есть обходной путь, добавив следующее в ваш Podfile:

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings['SWIFT_VERSION'] = '4.1'
   end
  end
end

Использование fastlane

Другой способ использования build_app из фастлэйна, как:

build_app(scheme: 'YourScheme',
          workspace: 'YourProject.xcworkspace',
          skip_archive: true,
          skip_package_ipa: true,
          include_bitcode: false)

Я предпочитаю этот способ, так как он упрощает работу и использует xcpretty, который выводит на печать более приятный результат, чем xcodebuild,

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