工做n年了第一次寫博客,之前有想過寫,可是老是陷入到具體工做中沒有時間。今年換了一份工做,純技術類型,因此時間相對比較富餘,並且能靜下心來寫。作過幾年項目經理,碼字對我來講能夠能應付,若是寫得很差還請你們見諒。java
首先說下我爲何要寫這篇博客:web
一、工做中用到spring boot 而後打包發佈又用到本地jar包,還有開發環境、測試環境、生產環境來回的更新部署,並且又是集羣,手動部署很是麻煩。spring
二、在網上找了寫資料來作這個整合的時候發現網上的資料都是幾年前的了,如今jenkins已經更新 好幾個版本了,因此操做方式有點不同。藉此機會寫出來供像我這樣的菜鳥們參考,大神們直接無視哈。windows
JDK、maven、tomcat、svn服務端(這4個程序的安裝就不介紹了,相信你們都有現成的環境,或是都安裝過,若是沒有安裝那能夠到網上找相關的資料進行安裝),本文的重點會放在整合上面。tomcat
囉嗦完了,直接進入主題maven
操做步驟:(記住這個步驟其餘的都是細節了,網上都能周到解決方案)svn
---如下會按照這個步驟進行說明,若是有其餘分支我會忽略,有疑問歡迎留言和吐槽工具
一、安裝jenkins(使用目前的最新版本2.7)測試
二、安裝插件ui
三、進行工具配置
四、新建項目
五、項目配置:svn資源庫、配置maven、配置tomcat發佈
若是是windows安裝,能夠直接下載msi安裝包,若是你想放到本身的tomcat中那能夠下載war包;下載地址:https://jenkins.io/download/,根據須要下載對應版本,由於我在開發環境用,直接下載windows的msi安裝包。其餘版本的安裝操做略有不一樣,可是都很簡單,網上隨便都能找到資料。
運行下載好的msi,全程默認安裝便可,安裝完成之後jenkins會默認啓動服務(其實這個msi中自帶了一個web服務,具體是哪一種我還沒去研究,注意:服務啓動後默認會佔用8080端口哦,windows下若是須要修改找到安裝目錄下的jenkins.xml中的如下內容,修改端口--若是運行過程當中修改須要重啓服務。其餘安裝方式自行解決了哈
<executable>%BASE%\jre\bin\java</executable>
<arguments>-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=8081 --webroot="%BASE%\war"</arguments> )。
服務啓動後會自動打開以下網址,若是沒有自動打開能夠手動打開。
該步驟是須要進行認證,按照提示去安裝目錄下找到密碼文件,用記事本打開就行,填完之後continue。個人目錄和打開後的密碼以下:
C:\Program Files (x86)\Jenkins\secrets 若是是war方式安裝的就去你的tomcat下找
下一步,安裝插件,選右邊的選項,進行選擇安裝,左邊的是推薦安裝,會安裝不少,時間很長,並且有的插件會安裝失敗,沒有必要。
下一步:默認會選中不少插件,選擇None所有去掉,後面配置的時候再去選擇安裝的插件也能夠
下一步:須要默認新建一個用戶,jenkins還有一套嚴格的用戶權限管理機制(若是沒有這個機制,那人人都能進行線上版本的編譯發佈那是多麼可怕的事情),本文不進行介紹,感興趣的同窗能夠直接去研究下。
固然你也能夠選擇右下方的 以管理員身份進入
接下來看到以下界面,恭喜你jenkins的安裝就完了;
接下來咱們去安裝咱們須要的插件,咱們這個整合須要用的插件有:
(1)Maven Integration plugin
(2)SVN Publisher plugin
(3)Deploy to container Plugin
步驟來了:
首頁-系統管理==》管理插件==》可選插件
插件很是多,將插件名複製到右上角的搜索框進行過濾;
選擇完三個插件進行安裝,以下圖:可是你會發現會安裝不少其餘的,這些是由於咱們初始化的時候所有跳過了,這些插件都是默認須要安裝的(一下子進行項目配置的時候你們就能夠看到了有不少默認的選項,這些選項也是須要插件支持的,這就是插件方式的好處)。
主要是配置jdk、maven
直接上圖
系統首頁==》configureTools
jdK配置
maven配置
配置完之後保存便可。
首頁--新建--輸入項目名和而後選擇maven項目
建完之後會列出,而後點擊須要配置的項目,進行項目配置
最好跳過測試,若是測試不經過,jenkins會任務build失敗,後續成功後發佈到tomcat的步驟就不會執行。
WAR/EAR files war包相對於新項目的路徑,
context path 至關於tomcat的虛擬目錄,看做項目名,若是沒有項目名則直接斜槓
而後配置tomcat 用戶名密碼必須是具有manager-gui權限的用戶,tomcat能夠加多個,我是將jenkins的端口修改爲8081了。
首選須要開啓tomcat用戶管理,默認是被註釋掉的,到tomcat/conf目錄下找到tomcat-user.xml 修改 tomcat-users標籤部分
<tomcat-users>
<role rolename="manager-gui" />
<role rolename="manager-status" />
<role rolename="manager-jmx" />
<role rolename="manager-script"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<user username="tomcat" password="tomcat" roles="manager-gui,manager-s tatus,manager-jmx,manager-script,admin-gui,admin-script"/>
</tomcat-users>
到這一步全部配置都完成了,只須要到項目主頁,點擊「當即構建」就能夠了
構建過程當中能夠實時查看構建日誌
點擊#1進入,而後 點擊console output
當看到這樣的結果,證實發布成功了,若是有錯誤那就折騰吧,我第一次也折騰了幾個小時(主要是我用了spring boot 打包本地jar的時候出現了些問題)