Windows 系統 Jenkins + Gradle + GitHub 實現自動化打包APK

自動化打包是一個較少溝通成本提高工作效率的一種方式,最近公司在做相關的項目過程中,提出了這個解決方案,現記錄下來,供大家參考和個人記憶,本篇博文較長,希望大家耐心閱讀。

jenkins 安裝

① 下載 Jenkins

地址:https://jenkins.io/download/

有兩種方式進行安裝,一種是war包,一種是msi包,此篇博文講述的是war包安裝方式,msi方式比較簡單,這裏就不做詳細介紹了,如果有需要大家可以下載博文末尾給出的網盤資源。

② 下載Tomcat

地址:https://tomcat.apache.org/

根據個人電腦情況選擇對應版本下載,本人是windows 64位系統

③ 安裝war包到Tomcat服務

將war包放置到Tomcat安裝目錄webapps目錄下

④ 啓動Tomcat服務器,配置Jenkins

打開瀏覽器,輸入http://localhost:8080/jenkins/ 進行訪問,按提示找到Jenkins生成的密碼並粘貼到框中,開始部署Jenkins

選擇Jenkins插件,選擇建議安裝的插件,開始安裝

創建第一個用戶及密碼

部署完成

安裝過程到這裏就結束了,接下來開始配置我們的Jenkins

Jenkins 配置

① 全局工具配置,配置 JDK / Git / Gradle

② 系統工具配置

③ 插件安裝(注:此步驟主要是針對於在部署Jenkins過程中插件下載失敗或者下載新的插件)

大家都知道“牆”的存在,所以出現下載失敗,大家不要慌張,也沒必要去爲了下載去買相關的翻牆資源,教大家兩種方式去下載插件,第一種是直接下載插件,地址是:http://updates.jenkins-ci.org/download/plugins/ ,按照下圖的上傳插件步驟進行插件上傳安裝;第二種是通過國內鏡像下載,按照下圖升級站點的方式將url替換爲如圖的鏈接,url爲:http://mirror.xmission.com/jenkins/updates/update-center.json

OK,到這裏必要的插件安裝和相關配置就結束了,前期準備工作已經結束,接下來就到了激動人心的時刻,我們該開始創建屬於我們的自動化打包項目。

創建自動化任務

① 第一步點擊“新建任務”

② 輸入任務名稱,選擇構建自由風格軟件項目

③ 填寫項目描述,設置丟棄策略

④ 配置參數化構建過程,此時我選擇的只是其中一種,選項參數,有兩個選項一個是Debug一個是Release,分別對應的是測試版APK與正式版APK

⑤ 在 ④ 中點擊“高級”,自定義工作空間,配置Jenkins工作空間,可用來存儲Jenkins遠程拉取的源碼

⑥ 選擇源碼來源,本人使用的是GitHub存儲的代碼,所以此處的URL是GitHub上對應項目的URL鏈接,之後選擇Add添加GitHub的賬號與密碼,這種方式是使用http的方式拉取代碼,可以選擇代碼獲取的分支名稱,默認主幹master

還有一種是通過SSH的方式拉取代碼,此時就要在選擇“類型”時,選擇如下圖箭頭所指的類型

接着填寫你的用戶名和對應的SSH方式的私鑰,這個私鑰是你在GitHub上所配置的SSH公鑰時,所生成的私鑰,這個兩個祕鑰要配對纔可以正常訪問。

⑦ 構建觸發器,選擇“定時構建”,本人設置的是每五分鐘進行一次構建

選擇“輪訓SCM”,配置每五分鐘進行一次構建,此時是否執行構建任務取決於你是否有代碼提交,如果提交則進行構建,否則不進行

還有一種是選擇由GitHub或GitLab在接收到代碼提交後,自動觸發構建,而且還可以指定分支,此種方式比較複雜,由於篇幅原因在這裏就不再敘述了,如果需要我會在以後的博文中給大家補充進來。

⑧ 構建,選擇箭頭所指的Gradle方式構建

選擇你在全局工具配置過程中設置的Gradle配置,並編寫Task執行Gradle任務

本人的Task是:clean assemble${APP_TYPE} --stacktrace --info --debug

⑨ 新建任務完成,可以點擊下圖箭頭進行參數構建或更改配置操作

到這裏本篇博文已經接近尾聲,希望可以通過本篇博文,讓大家對Android的自動化打包有一個全面的認知,接下來給大家補充一下,在這個過程中出現過得異常,供大家學習。

異常 ① :

 

解決:設置你需要編譯的源碼,Jenkins本地下載遠程代碼後的路徑,在“構建”中點擊“高級”進行設置

異常 ② :

解決:配置使用自定義工作空間

感謝大家耐心閱讀,如果大家喜歡歡迎大家點贊支持!!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章