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

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

maven項目在實踐中的構(gòu)建管理之路的方法

前言

邯山網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,邯山網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為邯山近1000家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站制作要多少錢,請找那個售后服務(wù)好的邯山做網(wǎng)站的公司定做!

最近一個月參與了公司幾個項目的腳手架構(gòu)建,適當(dāng)總結(jié)下經(jīng)驗。之前見過太多項目依賴,構(gòu)建,管理混亂不堪,導(dǎo)致后續(xù)的維護性差,甚至出現(xiàn)由此引發(fā)的事故。當(dāng)時就有一個規(guī)范管理的想法。

依賴管理

依賴管理,其實就是依賴范圍的管理。這里我叫他 依賴池。也就是 所有相關(guān)項目的依賴只能從這個池子里拿,不能超出其范圍。池子里的依賴我們定義為都是久經(jīng)考驗的同志。以maven工程為例,我們可以定義 一個名為ooxx-dependencies 的 pom 類型的工程。這里用來存放我們經(jīng)過技術(shù)選型并測試通過的依賴。每次依賴變動發(fā)布都要有新的版本號。也就是 依賴池的迭代一定要以版本號為標(biāo)志,多版本并行。

<?xml version="1.0" encoding="UTF-8"?>

  4.0.0

  com.ooxx
  ooxx-dependencies
  1.0.0.RELEASE

  ooxx dependencies
  the root dependencies
  
    1.8
    1.8
    UTF-8
    UTF-8
    1.8
    2.1.5.RELEASE
    2.1.4
    1.0.10.RELEASE
    5.1.47
    3.2.0
    4.5.5
    3.1.1
    3.2.0
    3.2.0
    2.9.2
  

  
    
      nexus
      Releases
      http://url/repository/maven-releases
    
    
      nexus
      Snapshot
      http://url/repository/maven-snapshots
    
  

  
    
      
        org.springframework.boot
        spring-boot-starter-parent
        ${springboot.version}
        pom
        import
      
      
        de.codecentric
        spring-boot-admin-dependencies
        ${spring-boot-admin.version}
        pom
        import
      
      
        org.springframework.boot
        spring-boot-starter-web
        ${springboot.version}
        
        
          
            org.springframework.boot
            spring-boot-starter-tomcat
          
        
      
      
        org.springframework.security
        spring-security-jwt
        ${springSecurityJwt.version}
      
      
        com.zaxxer
        HikariCP
        ${hikari.version}
      
      
        mysql
        mysql-connector-java
        ${mysql.version}
      
      
        com.baomidou
        mybatis-plus-boot-starter
        ${mybatisplus.version}
      
      
        com.baomidou
        mybatis-plus-generator
        ${mybatisplus.version}
      

      
      
        io.springfox
        springfox-swagger2
        ${swagger.version}
      
      
        io.springfox
        springfox-swagger-ui
        ${swagger.version}
      
    
  


然后,我們根據(jù)業(yè)務(wù)會定義一個parent項目,這個項目同樣是pom工程,區(qū)別于依賴池的是, 依賴池基于技術(shù)棧而不關(guān)注業(yè)務(wù),parent關(guān)注于業(yè)務(wù),不同業(yè)務(wù)application 依賴不同的parent,parent 來定義具體業(yè)務(wù)的module層次劃分。當(dāng)然parent 必須從依賴池構(gòu)建。可能例子更直觀, 我們有一個項目,模塊分為:1.后臺管理模塊 2.app接口模塊 3.通用依賴模塊 4.數(shù)據(jù)層模塊 5.app 啟動模塊 可以結(jié)合上面例子進行如下構(gòu)建parent

<?xml version="1.0" encoding="UTF-8"?>

 4.0.0

 com.ooxx
 ooxx-parent
 1.0.0
 pom

 parent
 the parent
 
   1.8
   1.8
   UTF-8
   UTF-8
   1.8
   1.0.0
   1.0.0.RELEASE
 
 
   
    
     
       com.ooxx
       ooxx-dependencies
       ${ooxx-dependencies.version}
       pom
       import
     
   
     
       com.ooxx
       ooxx-db
       ${ooxx.version}
     
   
     
       com.ooxx
       ooxx-common
       ${ooxx.version}
     
  
     
       com.ooxx
       ooxx-manage-api
       ${ooxx.version}
     
  
     
       com.ooxx
       ooxx-app-api
       ${ooxx.version}
     
   
 
 
   
     cn.hutool
     hutool-all
     provided
   
   
     org.projectlombok
     lombok
     compile
   
 



上述的具體如 app接口模塊 可以直接引用依賴池中的依賴進行具體開發(fā)。

補充

同時建議 版本號 為{數(shù)字}.{說明格式}。比如1.0.0.RC、 1.0.0.GA 等用于不同的場景。pom 名稱盡量 模板化 如 ooxx-parent 下的子module 命名為 ooxx-db、ooxx-app-api 之類。這樣可以用maven 模板生成統(tǒng)一的模板項目以快速構(gòu)建項目。同時達到 “見其名而知其意”的效果。因個人能力有限,不足之處或者更好的建議還望多多指教。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。


文章標(biāo)題:maven項目在實踐中的構(gòu)建管理之路的方法
標(biāo)題網(wǎng)址:http://weahome.cn/article/jeciec.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部