【Jenkins教程二】基於Linux實現Jenkins+maven+tomcat的自動化構建部署項目

前言

  • 爲了避免每次在發佈項目時,每次得刪掉war重新打包,打開服務器,上傳war包,重啓服務器這一系列的繁瑣程序。所以採用了以下基於Jenkins自動化構建部署項目的實現方式
  • 不明白怎麼安裝Jenkins的小夥伴可以上去瀏覽我寫的安裝教程,點擊鏈接

安裝插件

  • 【系統管理】-》【管理插件】-》【可選插件】
  • 勾選以下插件:
  • 【發佈插件】Deploy to container Plugin
  • 【subversion插件】Subversion Plug-in
  • 【構建Maven項目插件】Maven Integration plugin
  • 【本地化插件】Locale,這個需要到【系統設置】-【Default Language】輸入【zh-CN】並勾選Ignore browser preference and force this language to all users這個選項才能轉化爲中文

配置tomcat用戶

  • 在tomcat-user.xml配置用戶
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="admin" password="password" roles="manager-gui,manager-script,manager-jmx,manager-status"/>
  • 這個用戶在我們構建好項目war包需要發佈到tomcat,而這個用戶就是我們可以發佈到tomcat的憑證。

配置pom.xml構建命令

  • 需要在pom.xml裏面配置項目構建命令,否則該Jenkins啓動不會報錯也不會發布到tomcat上
 <packaging>war</packaging>

    <!--項目構建插件-->
    <build>
        <plugins>
            <!--編譯插件-->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
            <!-- 修改webapp目錄爲web -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <configuration>
                    <!-- 設置WebContent目錄爲Web目錄 -->
                    <webappDirectory>${basedir}/web</webappDirectory>
                    <warSourceDirectory>${basedir}/web</warSourceDirectory>
                    <warName>demo</warName>
                </configuration>
            </plugin>
        </plugins>
        <!--資源-->
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
                <!-- 是否替換資源中的屬性-->
                <filtering>false</filtering>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
            </resource>
        </resources>
    </build>

詳細步驟

  • 在首頁點擊【新建】
  • 輸入項目名稱且選中【構建一個Maven項目】,點擊下方【確定】
    這裏寫圖片描述
  • 勾選【use Svn-Partial Release Manager】和【use Subversion Release Manager】,【丟棄舊的構建】
    這裏寫圖片描述
  • 在【源碼管理】,選中【subversion】,輸入【Repository URL】項目svn地址和【Credentials】訪問項目的用戶憑證
    這裏寫圖片描述
  • 在【Build】,輸入【Root POM】不輸默認是根目錄下的pom.xml,如果pom.xml不在根目錄下面,則需要指定相對目錄,輸入【Goals and options】輸入構建需要執行的mvn命令。
  • 在【Post Step】,選擇【run regardless of build result】無論構建結果怎麼都執行
    這裏寫圖片描述
  • 在【構建設置】勾選【E-mail Notification】,輸入通知郵件和相關選項
  • 在【構建後操作】,選擇【Deploy war/ear to a container】
  • 【WAR/EAR files】這裏根據你maven生成war包的名稱填寫,但是路徑前面必須加上target否則會構建不成功。並且不會產生任何錯誤,也不會部署項目到tomcat,這裏是需要進行注意的
  • 【Context path】是生成war包的名稱,如果是 /那麼就是ROOT.war 現在的就會生成Spring.war
    這裏寫圖片描述
  • 點擊【應用】,進入項目點擊【立即構建】
  • 查看【Console Output】,構建成功。
    這裏寫圖片描述

後語

  • 本人也是初學者,寫的不夠詳細的地方希望可以指出。希望可以幫到有需要的人,不明白的人可以留言。
發佈了42 篇原創文章 · 獲贊 6 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章