如何从命令行编译 iOS 项目

How to compile an iOS project from command line

我想要 assemble/compile 一个有 cocoapods 但没有的工作区:

类似于: xcodebuild assemble

我想知道代码是否编译但不生成存档或部署的工件。

我试过 fastlane/gym 但它试图创建一个存档。

使用 xcodebuild

您可以使用以下命令编译项目:

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

因为您使用的是 cocoapods,所以您应该使用工作区而不是项目进行编译,如下所示:

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

如果在 cocoapods 目标中未设置 swift 版本,则可以通过将以下内容添加到您的 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 更好。