使用jenkins進行Android的持續集成


關於持續集成的定義和意義可以參考它的 百度百科

主要意義有以下幾點:

減少風險

減少重復過程

任何時間、任何地點生成可部署的軟件

增強項目的可見性

建立團隊對開發產品的信心

 

持續集成的實施

持續集成的工具有多個,本人實施的時候采用了Jenkins,它的前身是Hudson。

 

關於Jenkins的介紹可自行搜索,其主要特點是支持多種插件。

 

下面說說如何針對Android搭建一個可用的持續集成的系統。

 

用到的工具:

 

1.Android 完整的開發環境 :

Android  SDK

AndroidStudio 1.0.0穩定版本

Gradle  2.2.1版本

Gradle的插件 1.0.0 版本

jdk 1.7以上

 

2.服務器需要的工具:

Tomcat 最新版本  ,下載地址:http://tomcat.apache.org

Jenkins 工程war包最新版本即可,下載地址:http://jenkins-ci.org/

建議將Tomcat部署在Linux或者Mac系統上,主要是用命令做一些編譯的工作更方便一些,而且一些命令windows上沒有。

但是本人沒有mac也沒有Linux系統的電腦,所以就在windows 上進行了搭建。

 

3.版本控制服務器

建議使用git,當然svn也是闊以的,我這邊使用的是git,兩者只是配置不一樣。

 

4.環境變量的配置

jdk環境變量    自行搜索進行配置

Gradle 2.2.1環境變量 

QQ截圖20150602153338

Android SDK的環境變量

QQ截圖20150602153240

Tomcat環境變量

配置Tomcat環境變量
1,新建變量名:CATALINA_BASE,變量值:C:\tomcat 2,新建變量名:CATALINA_HOME,變量值:C:\tomcat 3,打開PATH,添加變量值:%CATALINA_HOME%\lib;%CATALINA_HOME%\bin

 

以上環境准備好后就可以進行下面的工作了

 

1. 將jenkins.war 丟在tomcat安裝目錄\webapps\ 下 ,如下圖

QQ截圖20150602154509

 

 

2.啟動Tomcat

在cmd下,執行startup命令,稍等一會Tomcat就會自動部署Jenkins。

如果執行startup,報找不到命令的錯誤,則是由於Tomcat的環境變量沒配置好,需要檢查再配置

 

3.啟動Jenkins

啟動Tomcat后,會自動部署,在瀏覽器中輸入 http://localhost:8080/jenkins/ 

如果能正常顯示Jenkins的界面就表示成功了,如下圖:

QQ截圖20150602155615

 

4.構建一個自由風格的job

點擊新建,創建一個自由風格任務

QQ截圖20150602161157

 

5.安裝Jenkins中的插件

點擊系統管理,然后點擊插件管理,進入到插件管理界面,找到可選插件

然后安裝下面幾個插件,名字一定要一樣的,不要相似的

GIT plugin

Gradle plugin

 

目前有這2個插件基本夠了,可實現自動從服務器端拉代碼,實現自動構建了

 

6.配置項目,假如第4步中構建的job名稱為MyTestApp

QQ截圖20150602161952

點擊配置進入到該項目的配置界面

主要配置的有3個地方

1. git的配置 ,由於已經按照了git插件

那么在源碼管理下,便會出現git的選項,如下圖

QQ截圖20150602162210

Repository URL  在此處填上項目的git地址,最好是https形式的,如果用ssh形式的地址,可能驗證起來比較麻煩,需要秘鑰

Credentials  地方 添加驗證方式 ,一般是username  and password 方式,輸入自己的用戶名和密碼。

 

2. 填寫git要拉取的分支

QQ截圖20150602162641

具體看自己的需求來確定分支,有些是develop有些是master或者其他分支。

 

3. 增加構建步驟

在下面構建的地方,添加一個構建步驟,選擇  Invoke Gradle script 類型

填寫構建時的一些命令,如下

QQ截圖20150602162821

特別說明一點,Jenkins的操作目錄  windows中一般在 C:\Users\Administrator\.jenkins  下,mac環境下,需要在Finder中去找,好像是個隱藏目錄

所有的job都在  .jenkins  目錄的job目錄下可以看到,如下圖

QQ截圖20150602163643

但是 Jenkins中某個job的所有命令的執行目錄 在 C:\Users\Administrator\.jenkins\jobs\{job名稱}\workspace

本例中目錄在 C:\Users\Administrator\.jenkins\jobs\MyTestApp\workspace 下,如果是正常的git目錄,拉下代碼后,workspace下面應該直接

是代碼目錄,但是我這邊的項目下面還一層目錄 workspace下面 不是代碼,而是一個目錄,在這個目錄下 執行 gradle build  會報找不到 task,

所以本人 在  switches 中  寫成 針對 某個項目的形式 :build -p /MyTestApp 

如果是正常的目錄,直接寫成:build

所有的gradle 都無須 添加 gradle ,自動編譯的時候它自己會添上, 完整的 命令是:gradle  build -p /MyTestApp  或者 gradle build

 

這樣就完成了簡單的配置,保存之后,進行一次構建,就能看到最終的運行效果。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM