真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Maven、Jenkins實(shí)現(xiàn)自動(dòng)化部署

工程實(shí)例代碼:https://github.com/chocolateBlack/multi_env_folder_maven

目前創(chuàng)新互聯(lián)公司已為1000多家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站托管運(yùn)營、企業(yè)網(wǎng)站設(shè)計(jì)、柯橋網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

利用Maven、Jenkins實(shí)現(xiàn)項(xiàng)目自動(dòng)化部署,能夠按照bin、conf、lib文件進(jìn)行打包,并能夠通過Jenkins按照環(huán)境一鍵發(fā)不到服務(wù)器

  1. 首先通過Maven插件實(shí)現(xiàn)按照不同環(huán)境,生成配置文件
    為了應(yīng)對環(huán)境切換,在配置文件conf.yaml中使用Maven屬性,在項(xiàng)目打包過程制定是按照id為dev的profile進(jìn)行構(gòu)建,還是以id為test的profile進(jìn)行構(gòu)建。其中conf.yaml和profle的配置如下:
    conf.yaml:
    path=${hdfs.path}

profile的配置如下:



    dev
    
            dev
            
            /dev/wh/source/tp
    
    
            true
    


    test
    
            dev
            
            /test/wh/source/tp
    

接下來就需要讓maven能夠解析conf文件夾中Maven屬性,這就是maven-resources-plugin要做的事情。
開啟資源過濾,并指定過濾的目錄。以下配置指定src/main/conf目錄下所有類型的文件開啟資源過濾,并將解析后的文件指定輸出到target/class/conf目錄下


        
                src/main/conf/
                true
                
                        **/*.*
                
                conf
        

2.其次,利用maven-assembly-plugin插件,將編譯好的項(xiàng)目分成bin、conf、lib目錄。

  • maven-assembly-plugin的配置中,指定一個(gè)主類這樣可以使用java -jar方式或者java -cp的方式運(yùn)行該項(xiàng)目jar包;
  • 以jar-with-dependencies的方式,將項(xiàng)目依賴的jar包一并打包到一個(gè)jar中
  • 指定assembly.xml文件,主要用于編譯好的文件分發(fā)到bin、conf、lib目錄中
    maven-assembly-plugin插件的配置:
    
        org.apache.maven.plugins
        maven-assembly-plugin
        2.6
        
                make-assembly
                package
                
                        single
                
                
                        
                                
                                        
                                        com.test.HelloMaven
                                
                        
                        
                                jar-with-dependencies
                        
                        ${project.name}
                        src/main/assembly/assembly.xml
                
        
        
    

關(guān)于文件分發(fā)的assembly.xml配置:


        
        
                src/main/bin
                bin
                755
        
        
        
                target/classes/conf/
                conf
                755
                unix
                
                        *.formatted
                
        


        
        
                755
                ${project.artifactId}-${project.version}.jar
                /lib/
                runtime
                
                        ${project.groupId}:${project.artifactId}
                
        
        
        
                755
                ${project.name}-jar-with-dependencies.jar
                /lib/
                runtime
        

項(xiàng)目結(jié)構(gòu)圖:
Maven、Jenkins實(shí)現(xiàn)自動(dòng)化部署

通過mvn package -Pdev命令打包后conf中的配置文件是按照dev環(huán)境生成的結(jié)果
解析后的conf.yaml
path=/dev/wh/source/tp
target目錄下的結(jié)構(gòu)圖,紅框標(biāo)記的就是期待的結(jié)構(gòu)目錄
Maven、Jenkins實(shí)現(xiàn)自動(dòng)化部署

3.項(xiàng)目按bin、conf、lib生成部署結(jié)構(gòu),剩下的事情就交給Jenkins,通過Jenkins以及其插件,將打包結(jié)果上傳目標(biāo)服務(wù)器
如下主要描述Jenkins配置的主要幾個(gè)位置

  • Build標(biāo)簽下,要在package命令中指令 -P參數(shù)
    Maven、Jenkins實(shí)現(xiàn)自動(dòng)化部署
  • 構(gòu)建后的操作中,要將編譯后的bin、conf、lib目錄,通過插件Send build artifact over SSH插件上傳到服務(wù)器目標(biāo)目錄中
    Maven、Jenkins實(shí)現(xiàn)自動(dòng)化部署

標(biāo)題名稱:Maven、Jenkins實(shí)現(xiàn)自動(dòng)化部署
分享鏈接:http://weahome.cn/article/ggsjoe.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部