Jenkins+Maven+Git總結

最近花了幾天時間搭建一個Jenkins環境,實現自動更新編譯代碼,及集成FindBugs插件。本篇博客將從以下幾點對Jenkins總結:

  • Jenkins簡介
  • Jenkins環境準備
  • Jenkins環境搭建
  • Jenkins環境配置
  • FindBugs插件集成

1 Jenkins簡介

持續集成:一種軟件開發實踐,開發人員提交了新代碼之後,集成工具能夠自動化的構建(包括編譯,發佈,自動化測試)來驗證,從而儘早地發現集成錯誤。
這裏寫圖片描述

Jenkins:一個開源軟件項目,基於Java開發的一種持續集成工具,用於監控持續重複的工作,旨在提供一個開放易用的軟件平臺,使軟件的持續集成變成可能。

2 Jenkins環境準備

2.1 Jdk安裝:

http://www.oracle.com/technetwork/java/javase/downloads/index.html,建議不要下載最新的JDK

2.2 Git安裝:

  • linux Fedora系列安裝命令:sudo yum install git
  • linux Debian系列安裝命令:sudo apt-get install git
  • 驗證安裝:git version
git version 2.15.0

注意:如果在執行git clone過程中出現錯誤“The requested URL returned error: 401 Unauthorized while accessing”,這是由於版本問題,重新下載最新的版本,具體如下:

解壓:tar -xzvf git-**.tar.gz

進入git目錄:# cd git-**

編譯安裝:

    autoconf
    ./configure --prefix=/usr/local
    make && make install

重置環境變量(本文是通過設置軟連接實現的)

rm /usr/bin/git
ln -s /usr/local/bin/git /usr/bin/git 

2.3 maven安裝:

  • 從官網上下載maven:http://maven.apache.org/download.cgi
  • 解壓至/usr/local目錄下:tar -xzvf apache-maven-3.2.5-bin.tar.gz

  • 設置環境變量:修改~/.bash_profile,添加如下:

export MAVEN_HOME="/usr/local/apache-maven-3.2.5"
export PATH="${PATH}:${MAVEN_HOME}/bin"
  • 驗證安裝:mvn -v,如果出現如下類似信息,安裝成功
Apache Maven 3.2.5 (12a6b3acb947671f09b81f49094c53f426d8cea1;2014-12-15T01:29:23+08:00)
Maven home: /usr/local/apache-maven-3.2.5
Java version: 1.7.0_45, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.45.x86_64/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "2.6.32-431.el6.x86_64", arch: "amd64", family: "unix"
  • 按照需求修改settings.xml文件,正常位於:/usr/local/apache-maven-3.2.5/conf,或者通過:find . -name settings.xml查找。

3 Jenkins環境搭建

Linux version 2.6.32-431.el6.x86_64 (mockbuild@x86-023.build.eng.bos.redhat.com) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Sun Nov 10 22:19:54 EST 2013

下載版本jenkins-2.46.1-1.1.noarch.rpm

  • 安裝Jenkins:sudo rpm -ih jenkins-2.9-1.1.noarch.rpm

  • 自動安裝完成後,文件所在的目錄如下:

war包:/usr/lib/jenkins/jenkins.war

配置文件:/etc/sysconfig/jenkins

默認的JENKINS_HOME目錄:/var/lib/jenkins/

Jenkins日誌文件/var/log/jenkins/jenkins.log

  • 啓動或者停止Jenkins

啓動Jenkins:sudo service jenkins start

Starting Jenkins                                           [確定]

停止Jenkins:sudo service jenkins stop

Shutting down Jenkins                                      [確定]

cat /var/lib/jenkins/secrets/initialAdminPassword,將初始化密碼粘到文本框中。/Users/guweiyu/Desktop/Jenkins系統設置.png

4 Jenkins環境配置

Jenkins的環境配置全部在’系統配置’中:
這裏寫圖片描述
在界面裏可以進行系統的全局設置,插件管理(比如安裝maven插件,Git插件,Mail插件,SSH插件等等),Global Tool Configuration等等。

4.1 管理插件

選擇‘管理插件’,安裝FindBugs插件:’FindBugs Plug-in’,郵件通知插件:‘Email Extension Plugin’等。

4.2 Git+Maven本地環境裝載

選擇‘Global Tool Configuration’,將本地JDK路徑,GIT路徑,maven路徑加入到配置中,當然也可以通過Jenkins自動下載
這裏寫圖片描述
這裏寫圖片描述

4.3 郵件通知及遠程SSH連接

選擇‘系統設置’

  • 添加SSH遠程連接,在SSH remote hosts處,添加:
    這裏寫圖片描述
  • 添加郵件通知,在‘Jenkins Location’處添加系統管理員地址
    這裏寫圖片描述
  • 在‘Extended E-mail Notification’處配置郵件SMTP信息
    這裏寫圖片描述
  • 在‘郵件通知’處同上配置
    這裏寫圖片描述
    至此,配置完成,下面就可以新建一個工程了。

4.4 Maven工程構建

  • 在主界面,選擇‘新建工程’,然後選擇‘構建一個maven項目
    這裏寫圖片描述
  • 在‘源碼管理’,設置:
    這裏寫圖片描述
  • ‘構建觸發器’,設置定時任務,當git發生更新時,重新構建工程:
    這裏寫圖片描述
  • ‘構建’,設置mvn打包方式,本編譯跳過測試案例編譯
    這裏寫圖片描述
    注意:中間可能設置許多認證方面的信息,可以在主界面‘Credentials’處添加,比如git賬戶,ssh遠程訪問認證等

5 FindBugs插件集成

首先在maven編譯命令後面添加‘ findbugs:findbugs’,注意findbugs掃描的是classess文件,因此一定要mvn compile,再findbugs。

然後,在構建操作和構建後操作,勾選Foundbugs相關按鈕
這裏寫圖片描述
至此,已全部搭建完成,點擊立即構建,工程就可以自動的遷移git代碼,利用maven編譯打包,使用findbugs掃描代碼。

在整個搭建的過程,肯定不會像上面所看到的這麼順利,出現過許多各種問題,這些問題沒有列出來。因爲我相信,只要你有一顆不達目的,誓不罷休的決心,一切困難都是紙老虎。

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