cd BuildDemo/
打包成 .xcarchive 到 buildserver 目录下
xcodebuild -archivePath "/Users/mark/buildserver/BuildDemo.xcarchive" -workspace BuildDemo.xcworkspace -sdk iphoneos -scheme "BuildDemo" -configuration "Debug" archive
然后我们开始打包成 ipa 文件 使用命令
xcodebuild -exportArchive -exportFormat IPA -archivePath "/Users/mark/buildserver/BuildDemo.xcarchive" -exportPath "/Users/mark/buildserver/BuildDemo.ipa"
-project projectname
指定工程名,当同一目录下有多个工程时必须指定。
-target tagrgetname
指定编译的 target 的名称。
-alltargets
编译工程中的所有 target 。
-worksace workspacename
指定 workspace 的名称。
-scheme schemename
指定 scheme 的名称,编译 workspace 时是必须的。
-destination destinationspecifier
使用 destinationspecifier 指定的设备作为目标设备。默认与 scheme 中选择的兼容。
-destination-timeout timeout
设置搜索目标设备的超时时间,默认是 30 秒。
-configuration configurationname
当编译每个 target 时使用 configurationname 指定的配置。
-arch architecture
当编译每个 target 时使用 architecture 指定的架构类型。
-sdk [<sdkfullpath> | <sdkname>]
指定编译时所用的 SDK 。参数可以是 SDK 的绝对路径,也可以是 SDK 的名称。
-showsdks
列出所有 Xcode 可识别的可用的 SDK ,这个参数不会启动编译。
-list
列出工程中的所有 target 和 配置,或者 workspace 的 schemes 。不会启动编译。
-derivedDataPath path
覆盖编译 workspace 的 scheme 时的结果数据存放的路径。
-resultBundlePath path
编译 workspace 的 scheme 时把一个 bunndle 写到指定的路径。
-exportArchive
指定一个可以被导出的 archive 文件。需要 -exportFormat , -archivePath 和 -exportPath` 配合使用,不能在编译时单独使用。
-exportFormat format
指定需要被导出的 archive 文件的格式。可行的格式是 IPA ( iOS 包文件), PKG ( Mac 包文件)和 APP 。如果未指定,则 xcodebuild 则会自动检测使用 IPA 或 PKG 格式。
-archivePath xcarchivepath
指定 archive 路径。
-exportPath destinationpath
指定导出的目标文件路径。
-exportProvisioningProfile profilename
指定导出 archive 文件时所使用的 provisioning pofile 。
-exportSigningIdentity identityname
指定导出 archive 文件时所使用的应用签名 id 。在可能的情况下,这个可以被 -exportProvisioningProfile 自动推导出来。
-exportInstallerIdentity identityname
指定导出 archive 文件时所使用的安装签名 id 。如果可能,这个可以被 -exportSigningIdentity 或 -exportProvisioningProfile 自动推导出来。
-exportWithOriginalSigningIdentity
指定创建可被导出的 archive 文件时所使用的签名文件。
buildaction ...
指定一个或多个编译 target 时的编译行为。可行的编译行为有: - build 编译根环境下( SYMROOT )的 target 。默认行为。
• analyze 编译并且分析根环境( SYMROOT )下的一个 target 或者 scheme 。需要指定一个 scheme 。
• archive Archive 根环境( SYMROOT )下的一个 scheme 。需要指定一个 scheme 。
• test 测试跟环境( SYMROOT )下的一个 scheme 。需要指定一个 scheme 。需要指定一个 scheme 和一个可选的目标。
• installsrc 拷贝工程代码到源代码根目录( SRCROOT )。
• install 编译 target 并且安装到发布目录下的 target 安装目录。
• clean 从编译根目录下( SYMROOT )移除编译产品和中间文件。
-xcconfig filename
当编译所有 targets 的时候从指定的文件加载编译设置。这些设置会覆盖其他的编译设置,包括命令行中单独传递的设置。
-dry-run, -n
打印本来要执行但是未执行的命令。
-skipUnavailableActions
跳过不能执行的编译而不是失败。这个选项仅仅在 -scheme 参数使用了的时候有效。
setting=value
设置编译设置的值为 value 。
-userdefault=value
设置用户默认设置为 value 。
-version
显示 Xcode 的版本信息。不会启动编译。当和 -sdk 一起使用的时候,将会显示指定的 SDK 的版本信息,或者 -sdk 后面未指定 SDK 则会显示所有的 SDK 版本信息。另外,如果指定了 infoitem 参数则一个单行的版本信息将会显示。
-usage
打包成 .xcarchive 到 buildserver 目录下
xcodebuild -archivePath "/Users/mark/buildserver/BuildDemo.xcarchive" -workspace BuildDemo.xcworkspace -sdk iphoneos -scheme "BuildDemo" -configuration "Debug" archive
然后我们开始打包成 ipa 文件 使用命令
xcodebuild -exportArchive -exportFormat IPA -archivePath "/Users/mark/buildserver/BuildDemo.xcarchive" -exportPath "/Users/mark/buildserver/BuildDemo.ipa"
-project projectname
指定工程名,当同一目录下有多个工程时必须指定。
-target tagrgetname
指定编译的 target 的名称。
-alltargets
编译工程中的所有 target 。
-worksace workspacename
指定 workspace 的名称。
-scheme schemename
指定 scheme 的名称,编译 workspace 时是必须的。
-destination destinationspecifier
使用 destinationspecifier 指定的设备作为目标设备。默认与 scheme 中选择的兼容。
-destination-timeout timeout
设置搜索目标设备的超时时间,默认是 30 秒。
-configuration configurationname
当编译每个 target 时使用 configurationname 指定的配置。
-arch architecture
当编译每个 target 时使用 architecture 指定的架构类型。
-sdk [<sdkfullpath> | <sdkname>]
指定编译时所用的 SDK 。参数可以是 SDK 的绝对路径,也可以是 SDK 的名称。
-showsdks
列出所有 Xcode 可识别的可用的 SDK ,这个参数不会启动编译。
-list
列出工程中的所有 target 和 配置,或者 workspace 的 schemes 。不会启动编译。
-derivedDataPath path
覆盖编译 workspace 的 scheme 时的结果数据存放的路径。
-resultBundlePath path
编译 workspace 的 scheme 时把一个 bunndle 写到指定的路径。
-exportArchive
指定一个可以被导出的 archive 文件。需要 -exportFormat , -archivePath 和 -exportPath` 配合使用,不能在编译时单独使用。
-exportFormat format
指定需要被导出的 archive 文件的格式。可行的格式是 IPA ( iOS 包文件), PKG ( Mac 包文件)和 APP 。如果未指定,则 xcodebuild 则会自动检测使用 IPA 或 PKG 格式。
-archivePath xcarchivepath
指定 archive 路径。
-exportPath destinationpath
指定导出的目标文件路径。
-exportProvisioningProfile profilename
指定导出 archive 文件时所使用的 provisioning pofile 。
-exportSigningIdentity identityname
指定导出 archive 文件时所使用的应用签名 id 。在可能的情况下,这个可以被 -exportProvisioningProfile 自动推导出来。
-exportInstallerIdentity identityname
指定导出 archive 文件时所使用的安装签名 id 。如果可能,这个可以被 -exportSigningIdentity 或 -exportProvisioningProfile 自动推导出来。
-exportWithOriginalSigningIdentity
指定创建可被导出的 archive 文件时所使用的签名文件。
buildaction ...
指定一个或多个编译 target 时的编译行为。可行的编译行为有: - build 编译根环境下( SYMROOT )的 target 。默认行为。
• analyze 编译并且分析根环境( SYMROOT )下的一个 target 或者 scheme 。需要指定一个 scheme 。
• archive Archive 根环境( SYMROOT )下的一个 scheme 。需要指定一个 scheme 。
• test 测试跟环境( SYMROOT )下的一个 scheme 。需要指定一个 scheme 。需要指定一个 scheme 和一个可选的目标。
• installsrc 拷贝工程代码到源代码根目录( SRCROOT )。
• install 编译 target 并且安装到发布目录下的 target 安装目录。
• clean 从编译根目录下( SYMROOT )移除编译产品和中间文件。
-xcconfig filename
当编译所有 targets 的时候从指定的文件加载编译设置。这些设置会覆盖其他的编译设置,包括命令行中单独传递的设置。
-dry-run, -n
打印本来要执行但是未执行的命令。
-skipUnavailableActions
跳过不能执行的编译而不是失败。这个选项仅仅在 -scheme 参数使用了的时候有效。
setting=value
设置编译设置的值为 value 。
-userdefault=value
设置用户默认设置为 value 。
-version
显示 Xcode 的版本信息。不会启动编译。当和 -sdk 一起使用的时候,将会显示指定的 SDK 的版本信息,或者 -sdk 后面未指定 SDK 则会显示所有的 SDK 版本信息。另外,如果指定了 infoitem 参数则一个单行的版本信息将会显示。
-usage
显示
xcodebuild
的使用信息。