Xcodebuild命令指南

xcodebuild命令使用:
build:

xcodebuild [-project <projectname>] [[-target <targetname>]...|-alltargets] [-configuration <configurationname>] [-arch <architecture>]... [-sdk [<sdkname>|<sdkpath>]] [-showBuildSettings] [<buildsetting>=<value>]... [<buildaction>]...
 xcodebuild [-project <projectname>] -scheme <schemeName> [-destination <destinationspecifier>]... [-configuration <configurationname>] [-arch <architecture>]... [-sdk [<sdkname>|<sdkpath>]] [-showBuildSettings] [<buildsetting>=<value>]... [<buildaction>]...
xcodebuild -workspace <workspacename> -scheme <schemeName> [-destination <destinationspecifier>]... [-configuration <configurationname>] [-arch <architecture>]... [-sdk [<sdkname>|<sdkpath>]] [-showBuildSettings] [<buildsetting>=<value>]... [<buildaction>]...

版本查看:

xcodebuild -version [-sdk [<sdkfullpath>|<sdkname>] [<infoitem>] ]
MacBook-Pro-2:Clean mqc$ xcodebuild -version
Xcode 9.1.0
Build version 8E3004b

查看工程信息:

xcodebuild -list [[-project <projectname>]|[-workspace <workspacename>]] [-json]

查看当前环境信息
xcodebuild -showsdks

iOS SDKs:
    iOS 11.1                        -sdk iphoneos11.1

iOS Simulator SDKs:
    Simulator - iOS 11.1            -sdk iphonesimulator11.1

macOS SDKs:
    macOS 10.13                     -sdk macosx10.13

tvOS SDKs:
    tvOS 11.1                       -sdk appletvos11.1

tvOS Simulator SDKs:
    Simulator - tvOS 11.1           -sdk appletvsimulator11.1

watchOS SDKs:
    watchOS 4.1                     -sdk watchos4.1

watchOS Simulator SDKs:
    Simulator - watchOS 4.1         -sdk watchsimulator4.1

Archive:

xcodebuild -exportArchive -archivePath <xcarchivepath> -exportPath <destinationpath> -exportOptionsPlist <plistpath>

Export:

xcodebuild -exportLocalizations -localizationPath <path> -project <projectname> [-exportLanguage <targetlanguage>...]

importLocalizations

imports localizations for a project, assuming any necessary localized resources have been created in Xcode

xcodebuild -importLocalizations -localizationPath <path> -project <projectname>

Options:

    -usage                              print brief usage
    -help                               print complete usage
    -verbose                            provide additional status output
    -license                            show the Xcode and SDK license agreements
    -checkFirstLaunchStatus             Check if any First Launch tasks need to be performed
    -project NAME                       build the project NAME
    -target NAME                        build the target NAME
    -alltargets                         build all targets
    -workspace NAME                     build the workspace NAME
    -scheme NAME                        build the scheme NAME
    -configuration NAME                 use the build configuration NAME for building each target
    -xcconfig PATH                      apply the build settings defined in the file at PATH as overrides
    -arch ARCH                          build each target for the architecture ARCH; this will override architectures defined in the project
    -sdk SDK                            use SDK as the name or path of the base SDK when building the project
    -toolchain NAME                     use the toolchain with identifier or name NAME
    -destination DESTINATIONSPECIFIER   use the destination described by DESTINATIONSPECIFIER (a comma-separated set of key=value pairs describing the destination to use)
    -destination-timeout TIMEOUT        wait for TIMEOUT seconds while searching for the destination device
    -parallelizeTargets                 build independent targets in parallel
    -jobs NUMBER                        specify the maximum number of concurrent build operations
    -dry-run                            do everything except actually running the commands
    -quiet                              do not print any output except for warnings and errors
    -hideShellScriptEnvironment         don't show shell script environment variables in build log
    -showsdks                           display a compact list of the installed SDKs
    -showBuildSettings                  display a list of build settings and values
    -list                               lists the targets and configurations in a project, or the schemes in a workspace
    -find-executable NAME               display the full path to executable NAME in the provided SDK and toolchain
    -find-library NAME                  display the full path to library NAME in the provided SDK and toolchain
    -version                            display the version of Xcode; with -sdk will display info about one or all installed SDKs
    -enableAddressSanitizer YES|NO      turn the address sanitizer on or off
    -enableThreadSanitizer YES|NO       turn the thread sanitizer on or off
    -resultBundlePath PATH              specifies the directory where a result bundle describing what occurred will be placed
    -derivedDataPath PATH               specifies the directory where build products and other derived data will go
    -archivePath PATH                   specifies the directory where any created archives will be placed, or the archive that should be exported
    -exportArchive                      specifies that an archive should be exported
    -exportOptionsPlist PATH            specifies a path to a plist file that configures archive exporting
    -enableCodeCoverage YES|NO          turn code coverage on or off when testing
    -exportPath PATH                    specifies the destination for the product exported from an archive
    -skipUnavailableActions             specifies that scheme actions that cannot be performed should be skipped instead of causing a failure
    -exportLocalizations                exports completed and outstanding project localizations
    -importLocalizations                imports localizations for a project, assuming any necessary localized resources have been created in Xcode
    -localizationPath                   specifies a path to XLIFF localization files
    -exportLanguage                     specifies multiple optional ISO 639-1 languages included in a localization export
    -xctestrun                          specifies a path to a test run specification
    -only-testing:TEST-IDENTIFIER       constrains testing by specifying tests to include, and excluding other tests
    -skip-testing:TEST-IDENTIFIER       constrains testing by specifying tests to exclude, but including other tests
    -json                               output as JSON (note: -json implies -quiet)

Xcode8.3.3之后导出.iap一般需要配置导出的Plist文件,可选项:
Available keys for -exportOptionsPlist:

compileBitcode : Bool

    For non-App Store exports, should Xcode re-compile the app from bitcode? Defaults to YES.

embedOnDemandResourcesAssetPacksInBundle : Bool

    For non-App Store exports, if the app uses On Demand Resources and this is YES, asset packs are embedded in the app bundle so that the app can be tested without a server to host asset packs. Defaults to YES unless onDemandResourcesAssetPacksBaseURL is specified.

iCloudContainerEnvironment

    For non-App Store exports, if the app is using CloudKit, this configures the "com.apple.developer.icloud-container-environment" entitlement. Available options: Development and Production. Defaults to Development.

manifest : Dictionary

    For non-App Store exports, users can download your app over the web by opening your distribution manifest file in a web browser. To generate a distribution manifest, the value of this key should be a dictionary with three sub-keys: appURL, displayImageURL, fullSizeImageURL. The additional sub-key assetPackManifestURL is required when using on demand resources.

method : String

    Describes how Xcode should export the archive. Available options: app-store, ad-hoc, package, enterprise, development, and developer-id. The list of options varies based on the type of archive. Defaults to development.

onDemandResourcesAssetPacksBaseURL : String

    For non-App Store exports, if the app uses On Demand Resources and embedOnDemandResourcesAssetPacksInBundle isn't YES, this should be a base URL specifying where asset packs are going to be hosted. This configures the app to download asset packs from the specified URL.

teamID : String

    The Developer Portal team to use for this export. Defaults to the team used to build the archive.

thinning : String

    For non-App Store exports, should Xcode thin the package for one or more device variants? Available options: <none> (Xcode produces a non-thinned universal app), <thin-for-all-variants> (Xcode produces a universal app and all available thinned variants), or a model identifier for a specific device (e.g. "iPhone7,1"). Defaults to <none>.

uploadBitcode : Bool

    For App Store exports, should the package include bitcode? Defaults to YES.

uploadSymbols : Bool

    For App Store exports, should the package include symbols? Defaults to YES.
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,457评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,837评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,696评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,183评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,057评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,105评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,520评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,211评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,482评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,574评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,353评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,897评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,174评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,489评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,683评论 2 335

推荐阅读更多精彩内容