如何从命令行编译 iOS 项目
How to compile an iOS project from command line
我想要 assemble/compile 一个有 cocoapods 但没有的工作区:
- 归档。
- 需要设置凭据或 pem 文件。
类似于:
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
更好。
我想要 assemble/compile 一个有 cocoapods 但没有的工作区:
- 归档。
- 需要设置凭据或 pem 文件。
类似于:
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
更好。