xcodebuild -usage
xcodebuild -showsdks
xcodebuild -version [-sdk [<sdkfullpath>|<sdkname>] [<infoitem>] ]
xcodebuild -list [[-project <projectname>]|[-workspace <workspacename>]]
xcodebuild archive -archivePath <archivePath> -project <projectName> -scheme <schemeName> #從-list命令中獲取 -configuration < Debug|Release> -sdk <sdkName> #sdkName可從showsdks命令中獲取
xcodebuild
-exportArchive
-archivePath <xcarchivepath>
-exportPath <destinationpath>
-exportOptionsPlist <plistpath>#這個plist文件能夠經過打一次ipa包裏面去獲取,而後根據需求修改
xcodebuild -exportLocalizations -localizationPath <path> -project <projectname> [-exportLanguage <targetlanguage>...]
xcodebuild -importLocalizations -localizationPath <path> -project <projectname>
可選命令 | 命令說明 |
-usage | 查看xcodebuild簡潔的用法 |
-help | 查看幫助 |
-verbose | 提供額外的狀態輸出 |
-license | 顯示Xcode和SDK許可協議 |
-checkFirstLaunchStatus | 檢查是否有任何初啓動任務須要執行 |
-project NAME | 編譯項目名稱,例如:xcodebuild -project XXX.xcodeproj |
-target NAME | 編譯目標名稱 |
-targets | 編譯所有目標 |
-workspace NAME | 編譯工做空間名稱 |
-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語言 |
Key | 類型 | value | 說明 |
compileBitcode | Bool | For non-App Store exports, should Xcode re-compile the app from bitcode? Defaults to YES | 對於非App Store的出口,應從新編譯Xcode中從bitcode應用程序?默認爲YES |
embedOnDemandResourceshtml AssetPacksInBundlepython |
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 | 對於非App Store的出口,若是應用程序使用按需的資源,這是YES,資產包被嵌入在應用程序包,使應用程序能夠在沒有服務器託管資產包進行測試。默認爲YES除非指定onDemandResourcesAssetPacksBaseURL |
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 | 對於非App Store的出口,若是應用程序使用CloudKit,這種配置「com.apple.developer.icloud容器環境」的權利。可用選項:開發和生產。默認爲發展 | |
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 | 對於非App Store的出口,用戶能夠經過在Web瀏覽器中打開您的分發清單文件下載你的應用程序在網上。要生成分佈明顯,此鍵的值應該是有三個子鍵的字典:appURL,displayImageURL,fullSizeImageURL。額外的子鍵assetPackManifestURL是按需使用資源時,須要。 |
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 | Xcode中描述如何導出存檔。可用選項:應用程序商店,即席,包裝,企業發展,開發人員ID。選項列表會有所不一樣根據存檔的類型。默認爲發展 |
onDemandResourcesAssetPweb acksBaseURLshell |
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 | 對於非App Store的出口,若是應用程序使用按需資源embedOnDemandResourcesAssetPacksInBundle不是YES,這應該是一個基本URL指定,其中資產包將要舉行。該配置應用從指定的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> | 對於非App Store的出口,Xcode中應該薄包一個或多個設備的變種?可用選項:<無>(Xcode中產生的非變薄廣泛的應用程序),<薄參加的全部變體>(Xcode中產生一個通用的應用程序以及全部可用的變薄變型),或針對特定設備型號標識(例如「 iPhone7,1「)。默認爲<無> |
uploadBitcode | Bool | For App Store exports, should the package include bitcode? Defaults to YES | 對於App Store的導出,應包包括bitcode?默認爲YES |
uploadSymbols | Bool | For App Store exports, should the package include symbols? Defaults to YES | 對於App Store的出口,應包包含符號?默認爲YES |
xcodebuild clean -workspace <xxx.workspace> -scheme <schemeName> -configuration <Debug|Release> -sdk<sdkName>
xcodebuild build -workspace <xxx.workspace> -scheme <schemeName> -configuration <Debug|Release> -sdk<sdkName>
xcodebuild archive -archivePath <archivePath> #生成的.xcarchive包存放路徑 -workspace <XXX.xcworkspace> -scheme <schemeNmae> -configuration <Debug|Release> -sdk <sdkName>
xcodebuild -exportArchive -archivePath <archivePath> #.archive文件的全路徑 eg: .../.../XXX.xcarchive -exportPath <exportPath> #ipa文件導出路徑 -exportOptionsPlist <exportOptionsPlistPath> #exportOptionsPlist文件全路徑 eg: .../.../XXX.plist
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>compileBitcode</key> <false/> <key>method</key> <string>development</string> <key>provisioningProfiles</key> <dict> <key>com.669.yanyou</key> <string>yanyou_dev</string> </dict> <key>signingCertificate</key> <string>F13EE282147D6ED2CD5ACEEF20476B39C87AEAAC</string> <key>signingStyle</key> <string>manual</string> <key>stripSwiftSymbols</key> <true/> <key>teamID</key> <string>HW9U4B8YY9</string> <key>thinning</key> <string><none></string> </dict> </plist>