框架建设实战2——创建frame-bom和out-bom

根frame-parent的创建一样,分别创建两个工程。主要管理公司内部的二方包和外部的三方包。

1.frame-bom

GAV定义为:

  <groupId>com.test</groupId>  
  <artifactId>frame-bom</artifactId>  
  <name>frame-bom</name>  
  <packaging>pom</packaging>  
  <version>1.0.0-SNAPSHOT</version>

依赖管理:

主要是内部二方包所有的依赖管理

如,对所有组件的版本定义为:

    <frame-job-starter.version>1.0.0-SNAPSHOT</frame-job-starter.version>
    <frame-cache-starter.version>1.0.0-SNAPSHOT</frame-cache-starter.version>  
    <frame-lock-starter.version>1.0.0-SNAPSHOT</frame-lock-starter.version>  
    <frame-feign-starter.version>1.0.0-SNAPSHOT</frame-feign-starter.version>  
    <frame-orm-starter.version>1.0.0-SNAPSHOT</frame-orm-starter.version>  

相应的,对定义的二方包加入对应的依赖管理 

  <dependencyManagement> 
    <dependencies>
      <!-- starter 组件 -->
      <dependency> 
        <groupId>com.test</groupId>  
        <artifactId>frame-orm-starter</artifactId>  
        <version>${frame-orm-starter.version}</version> 
      </dependency>  
      <dependency> 
        <groupId>com.test</groupId>  
        <artifactId>frame-job-starter</artifactId>  
        <version>${frame-job-starter.version}</version>
      </dependency>  
      <dependency> 
        <groupId>com.test</groupId>  
        <artifactId>frame-cache-starter</artifactId>  
        <version>${frame-cache-starter.version}</version> 
      </dependency>  
      <dependency> 
        <groupId>com.test</groupId>  
        <artifactId>frame-lock-starter</artifactId>  
        <version>${frame-lock-starter.version}</version> 
      </dependency>  
      <dependency> 
        <groupId>com.test</groupId>  
        <artifactId>frame-serviceregist-starter</artifactId>  
        <version>${frame-serviceregist-starter.version}</version> 
      </dependency>  
      <dependency> 
        <groupId>com.test</groupId>  
        <artifactId>frame-feign-starter</artifactId>  
        <version>${frame-feign-starter.version}</version> 
      </dependency>  
      <dependency> 
        <groupId>com.test</groupId>  
        <artifactId>frame-request-starter</artifactId>  
        <version>${frame-request-starter.version}</version> 
      </dependency>  
    </dependencies>
  </dependencyManagement>  

2.frame-out-bom

GAV定义为:

  <groupId>com.test</groupId>  
  <artifactId>frame-out-bom</artifactId>  
  <name>frame-out-bom</name>  
  <packaging>pom</packaging>  
  <version>1.0.0-SNAPSHOT</version>

依赖管理:

主要是对外部所有三方包的依赖管理

比如常见的fastJson、hutool、apache common等。

版本定义示例:

    <commons-codec.version>1.15</commons-codec.version>  
    <commons-dbcp2.version>2.9.0</commons-dbcp2.version>  
    <commons-lang3.version>3.12.0</commons-lang3.version>  
    <commons-pool.version>1.6</commons-pool.version>  
    <commons-pool2.version>2.11.1</commons-pool2.version> 

依赖管理示例:

  <dependencyManagement> 
    <dependencies>
      <dependency>
        <groupId>commons-codec</groupId>
        <artifactId>commons-codec</artifactId>
        <version>${commons-codec.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-dbcp2</artifactId>
        <version>${commons-dbcp2.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>${commons-lang3.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-pool</groupId>
        <artifactId>commons-pool</artifactId>
        <version>${commons-pool.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-pool2</artifactId>
        <version>${commons-pool2.version}</version>
      </dependency>
    </dependencies>
  </dependencyManagement>  

后续,所有的二方包维护和三方包维护,都在对应的bom中维护即可。

而两个BOM又会在frame-parent中集成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值