iOS的打包主要是分爲導入證書,以及xcodebuild編譯了swift
Mac準備好以後,Xcode先裝上,用Xcode打開項目,而後打開項目配置的General部分xcode
若是證書沒有導入到該電腦,點擊Fix Issue,就能夠很方便的將證書導入到Keychains中,這一步完成以後,將至關於證書導入到電腦中了。app
安裝Xcode Plugin插件:這個在Jenkins的插件管理裏面去安裝就行了iphone
環境變量配置:Jenkins運行程序的時候,初始狀態是沒有任何環境變量的,須要手動配置,否則會提示說,簽名錯誤ui
環境變量 HOME
是必須的,USER
變量可能也會用到,這Jenkins的節點配置裏面設置插件
圖片中塗掉的用戶名,改爲你電腦上的用戶名code
Jenkins job的配置圖片
Clean before build?
這個勾上,蘋果仍是很坑的,clean下比較保險Pack application and build .ipa?
這個不要勾選,由於Mac OS X >= 10.10
就不支持打ipa了,勾了反而會報錯Code Signing Identity
這個應該是可選的,證書的名字,能夠打開Keychains查看到,Example iPhone Developer: Hello Kitty (4PHMYE8812)
Xcode Project Directory
若是項目不是在當前目錄下,須要填上這個值其餘的配置,看狀況弄弄就行了,不寫應該問題也不大ip
最後須要生成ipa文件,增長構建步驟裏面加上個Execute Shell
, 腳本內容這樣寫開發
TARGET=demo xcrun -sdk iphoneos -v PackageApplication ./build/Release-iphoneos/${TARGET}.app -o $PWD/$TARGET.ipa
將其中的TARGET改爲項目真正的名字
出現 /libswiftCore.dylib: codesign failed with exit code 1
Xcode Plugin的Code signing & OS X keychain options
這個選項下面的Unlock Keychains?
這個選項勾上,Keychain path填上${HOME}/Library/Keychains/login.keychain
密碼填上Mac當前用戶的密碼,再次編譯就行了(純屬試驗出來的,徹底不知道怎麼回事,第一次成功後,即便是不勾選,第二次也會成功)。
Jenkins文件的後續操做
生成的文件能夠上傳到第三方平臺,也能夠簡單的使用Archive the artifacts
保存下來,這裏問題應該都不大,就不具體說明了。
本身也搗鼓了好長時間,終於搞定,記錄下來,以供後來者參考。