1. 程式人生 > >jenkins教程(基於maven+Git+jdk的簡單搭建)

jenkins教程(基於maven+Git+jdk的簡單搭建)

對於jenkins我已經“垂涎”一年多了,之所以沒有認真地玩一遍,也是因為沒有工作的動力驅動。正好,最近團隊在搭建敏捷工具,自然而然就由我來研究一波啦。

1 下載軟體

選擇 Long-term Support (LTS)的版本,可選擇下載war包直接部署在tomcat,也可以選擇linux具體版本,這樣在linux端可直接service jenkins start進行開啟。

安裝完成後,訪問localhost:9000,即可看到jenkins介面,初始化密碼和安裝預設外掛的步驟,網上有很多優秀的介紹,此處省略。

2 配置環境

linux伺服器的版本是CentOS release 6.9 (Final)

2.1 Git的安裝

一開始我是直接使用了yum git install,預設安裝的git版本過低

結果在配置git頁面出現了以下的提示

error: The requested URL returned error: 401 Unauthorized while accessing https://git.oschina.net/zemo/demo.git/info/refs  fatal: HTTP request failed

這裡借鑑了一位博主的文章對git進行升級,感謝大神

升級後的git版本:

git --version
git version 2.2.1

2.2 配置git,jdk,maven

選擇 系統管理=>全域性工具配置

配置git:

 這裡需要注意:配置git的路徑,應該在git安裝路徑後面再加/git,參考windows配置git時使用git.exe結尾:

maven配置:

jdk配置:

配置的路徑是jdk安裝的環境變數的路徑

3 安裝外掛

系統管理=>外掛管理

篩選外掛,直接安裝即可

3.1 maven外掛,可用於構建maven風格的專案

3.2 git外掛,用於git遠端連線程式碼庫並拉取程式碼

 

3.3 SSH外掛,可用於上傳程式碼至遠端伺服器

這裡說明一下SSH外掛的配置

系統管理=>系統配置

按要求配置即可。 

4 構建專案

4.1 構建一個maven風格的專案

4.2 配置工程資訊

 

點選名稱,進入構建工程,點選配置

4.2.1 general

4.2.2 原始碼管理

 

4.2.3 構建觸發器

 

 4.2.4 Pre Steps

 4.2.5 Post Steps

最後一個是配置執行指令碼,這樣就能實現在maven構建war包後,執行指令碼檔案,進行部署並重啟

這裡只是簡單的指令碼,借鑑了別的大神,相信所有人都看得懂

#!/bin/sh
#defined 
TOMCAT_HOME="/usr/java/tomcat/apache-tomcat-7.0.67/"
ID=`ps -ef | grep java | grep apache-tomcat-7.0.67|awk '{print $2}'`
echo $ID 
echo "kill tomcat"
kill -9 $ID
echo "remover war file"
cd "$TOMCAT_HOME"/webapps
rm -rf JavaWeb-0.0.1-SNAPSHOT
rm -rf JavaWeb-0.0.1-SNAPSHOT.war
echo "copy war to webapp"
cd /home/lin
cp JavaWeb-0.0.1-SNAPSHOT.war "$TOMCAT_HOME"/webapps
cd "$TOMCAT_HOME"/bin
echo "start tomcat"
./startup.sh

5 注意事項

5.1 配置maven時注意事項

進行自動化maven打包時可能會出現如下錯誤:

ERROR: Maven JVM terminated unexpectedly with exit code 137

說明maven可用的記憶體不足,可以在 系統管理=>系統配置

配置如下引數:

 順便在此配置git的使用者名稱和密碼

5.2 maven預設的倉庫可改成阿里雲的倉庫

在conf/settings.xml中新增以下資訊:

<mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>
</mirror>

5.3 maven打包可能出現的錯誤

Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000080000000, 1431830528, 0) failed; error='Cannot allocate memory' (errno=12)

這個時候可能是系統可用記憶體不足導致的