iOS自动化打包 ---- xcodebuild 命令详解

2,175 阅读3分钟

为了更好的利用我们宝贵的时间,自动化打包还是很必要的。 xcodebuild 命令详解;

一、archive

xcodebuild archive 
         -archivePath <archivePath>
         -project <projectName>
         -workspace <workspaceName>
         -scheme <schemeName>    #从-list命令中获取
         -configuration <Debug|Release>

2、Export

xcodebuild -exportArchive
           -archivePath <xcarchivepath>
           -exportPath <destinationpath>
           -exportOptionsPlist <plistpath>   #这个plist文件可以通过打一次ipa包里面去获取

3、Clean

xcodebuild clean
           -workspace <workspaceName>
           -scheme <schemeName>    #从-list命令中获取
           -configuration <Debug|Release>

如果在执行过程中又不喜欢日志输出的,可以在命令行最后加上

**

-quiet    #只有 warn 和 error 才会输出

以上就是自动化打包基本的几种使用方法以及参数配置了,当然xcodebuild的参数非常多,xcode能做的事情大部分都有对应的命令行
下面列出部分可选命令的命令说明,如果需要更复杂的使用方法,可以浏览官方文档

可选命令命令说明

命令名称命令描述
-usage查看xcodebuild简洁的用法
-help查看帮助
-verbose提供额外的状态输出
-license显示Xcode和SDK许可协议
-checkFirstLaunchStatus检查是否有任何初启动任务需要执行
-project NAME编译项目名称,例如:xcodebuild -project XXX.xcodeproj
-target NAME编译目标名称
-workspaceNAME编译工作空间名称
-scheme NAME编译计划名称
-configuration NAME为构建每一个目标使用build配置名称
-xcconfig PATH在PATH作为替代应用文件中定义的构建设置
-arch ARCH建立每个目标的架构ARCH;这将覆盖在项目中定义的架构
-sdk SDK使用指定的SDK编译项目
-toolchain NAME使用工具链与标识或名称
-destination DESTINATIONSPECIFIER使用由目标说明(用逗号分隔的一系列的key =描述目的地使用值对)中描述的目的地
-destination-timeout TIMEOUT等待TIMEOUT秒,而搜索的目标设备
-parallelizeTargets建立并行独立目标
-jobs NUMBER指定并发生成操作的最大数量
-dry-run做一切,除了实际运行的命令
-hideShellScriptEnvironment不显示在构建日志shell脚本中的环境变量
-showsdks显示已安装的SDK的列表
-showBuildSettings显示构建设置和值的列表
-list列出了在一个工作空间中的一个项目的目标和配置,或方案
-find-executable NAME在所提供的SDK和工具链显示的完整路径可执行文件名称
-find-library NAME在所提供的SDK和工具链显示的完整路径库名
-version显示的Xcode的版本;与-sdk将显示一个或所有已安装的SDK信息
-enableAddressSanitizer YES/NO测试时打开或关闭地址过滤
-resultBundlePath PATH指定在描述什么发生了捆绑的结果将被放置的目录
-derivedDataPath PATH指定的目录中生成产品和其他衍生数据会
-archivePath PATH被指定任何创建的档案将被放置的目录,或应导出存档
-exportArchive指定归档应导出
-exportOptionsPlist PATH指定用于配置归档导出plist文件的路径
-enableCodeCoverage YES/NO打开代码覆盖率或关闭时的测试
-exportPath PATH指定从存档导出的产品的目标
-skipUnavailableActions指定不能执行计划的行动应被跳过而不是导致失败
-exportLocalizations出口完成优秀项目本地化
-importLocalizations进口本地化项目,假设任何必要的本地化资源在Xcode中已创建
-localizationPath指定XLIFF本地化文件路径
-exportLanguage规定包括在本地化出口多个可选ISO 639-1语言

载请联系作者获得授权,非商业转载请注明出处。