理解:
持續集成的重要性:在日益復雜的開發設計過程中,為了能讓開發人員能夠更好的協同工作,保證產品的質量,就需要經常集成他們的工作,而每次集成使用自動構建工具來完成,這樣,就能最快的發現產品中出現的錯誤,使得開發出高內聚的產品。
Jenkins就是這樣一款開源持續集成的軟件,它支持Maven,ant等自動構建工具,Git和SVN這樣的版本控制工具,實現集成的自動化,每一個步驟的自動化可以讓開發人員從構建和版本控制中解脫出來,能更好的關注於產品的邏輯層面。這里主要講解Maven的安裝配置和自動構建項目,GIT和SVN對項目的提交,還有如何在Jenkins中配置這兩種工具。
Jenkins 能實施監控集成中存在的錯誤,提供詳細的日志文件和提醒功能,還能用圖表的形式形象地展示項目構建的趨勢和穩定性。
簡單點來說,Jenkins不存儲項目代碼文件等,而是通過你配置的GIT或者SVN這樣的項目管理工具(版本控制工具)中的Repository的URL來獲取項目,然后通過你配好的Maven這樣的自動構建工具來編譯,運行,測試,部署項目,然后告訴你項目中出現的錯誤,每次提交的修改記錄等等。它相當於是一個集成的功能軟件,將這兩種工具的功能集成到一起,使得每次提交都對整個項目做一次構建,保證及時查出集成中的錯誤。
步驟:
一. Maven的安裝配置
1. 首先我們從官網下載Maven
– http://maven.apache.org
下載下來是一個apache-maven-3.3.9-bin.zip文件,我們將它解壓到文件目錄如E:\apache-maven-3.3.9下
2. 配置Maven環境變量
配置Maven環境之前,確保配置了Java JDK1.6版本以上的環境變量,然后進行如下步驟:
– 建立環境變量: maven_home=“E:\apache-maven-3.3.9 ”
– 加入path即可,將“%maven_home%\bin;”加入path
– 命令行中檢查是否安裝成功: mvn -version
成功后出現如下界面
Maven主要是使用pom.xml文件來管理項目(一般會自動創建)
GroupID是項目組織唯一的標識符,實際對應JAVA的包的結構,是main目錄里java的目錄結構。
ArtifactID就是項目的唯一的標識符,實際對應項目的名稱,就是項目根目錄的名稱。打開命令行,進入想要創建項目的目錄
Dependencies: 依賴,即構建項目所需要的jar包,只需要在這里寫出,在mvn compile等命令的時候就可以幫你自動下載到本地倉庫中(之后講)
Maven通過Repository本地倉庫和中央倉庫來管理所有項目使用的jar包,位置可以見conf目錄下的settings.xml,然后更改本地倉庫的位置。
接下來,我們用maven創建一個項目:
進入命令行,進入你要創建項目的目錄,如E:\JavaWorkSpace
輸入命令 mvn archeeype:generate,然后會出來讓你選擇項目的類型,可以根據提示輸入數字,如655,然后根據提示輸入項目的GroupId和ArtifactId及版本號
成功之后可看到:
當然我們也可以在Eclipse中安裝maven的插件來完成項目的創建工作
安裝Maven插件見博客:http://blog.csdn.net/guanning0109/article/details/26069277
安裝好后我們也可以根據提示完成創建maven項目
填寫后可創建出相同的項目
二. SVNt的使用
首先我們說SVN,因為Jenkins默認支持SVN,要使用Git需要下載插件
安裝 SVN 服務端: 我們使用 VisualSVN Server 3.5.1 作為 SVN 服務端。
安裝成功打開如圖:
我們在User中創建user,然后在Repository中創建項目:
安裝 SVN 客戶端:本教程使用 TortoiseSVN 作為 svn 客戶端
安裝完成后,我們在鼠標右鍵的選項中會多出兩個選項TorroiseSVN和SVN checkout,SVN checkout就是將這個文件夾和服務器端的url相對應
然后我們右鍵該文件夾然后commit到SVN服務器端,我們可以在服務器端看到提交的代碼
關於Github的使用就不再說明了,只在Jenkins中如何配置Github做說明
三. Jenkins詳細配置
Jenkins下載地址:http://jenkins-ci.org/
可以只用下載一個war包,然后在命令行中使用java -jar jenkins.war
或者將其設置為系統服務,然后啟動即可
我們這里是下載的jenkins.msi文件進行安裝,比較簡單,如果不能安裝,從http://mirrors.jenkins-ci.org/war/latest/jenkins.war下載war包,手動配置,配置說明參見https://wiki.jenkins-ci.org/display/JENKINS/Use+Jenkins
安裝成功,進入localhost:8080可看到(這里我已經創建了兩個項目)
首先點擊左側的系統管理進行JDK
再點擊系統設置先配置JDK
再配置Maven
如果使用的是SVN那么我們就可以開始創建項目了,輸入項目名稱點擊OK
在源碼管理中配置SVN,(出現Git是因為我裝了GIT的插件,默認沒有)將之前SVN中項目的URL復制到這里
填寫構建的pom.xml的位置:找到剛才項目中pom.xml的路徑放在這里
點擊保存即可
然后在主界面點擊立即構建,成功后顯示如下ibuild history中的圓點顯示為藍色
現在整個jenkins就搭建好了,我們需要的就是讓其他人可以登上這個服務端,然后共同對項目進行管理提交和構建
四. 局域網的構建和jenkins的應用
搭建局域網就不用贅述了
當搭建好之后,如服務器端的網絡ipv4地址為172.28.243.430,那么其余人只需要輸入在瀏覽器中輸入172.28.243.430:8080就可以訪問到Jenkens的服務器
自動構建的時候是使用服務器端來自動構建程序,客戶端不需要配置任何東西,尤其是使用Git的時候。
項目小組提交實驗:可見有兩個人提交並自動構建了項目
ps:使用Git的方法
因為jenkins默認不提供git,但是可以下插件
在面板中,系統管理中的管理插件
在可選插件中搜索Git plugin安裝即可
安裝好之后,我們需要在系統管理->系統設置中,和配置JDK一樣配置git.exe所在的位置(默認位置為C:\Users\“計算機名字”\AppData\Local\GitHub\PortableGit_25d850739bc178b2eb13c3e2a9faafea2f9143c0\cmd\git.exe)
然后在構建項目的時候就可以在源碼管理中選擇Git,然后輸入項目所在的網址即可
最后是軟件項目管理小組每個人對項目的代碼做了改動,並構建完成截圖: