zoukankan      html  css  js  c++  java
  • maven的统一版本管理实践

    为什么要使用maven的统一版本管理?

    在进行项目开发的时候,我们使用maven来做项目的构建和管理。为了方便项目中各个模块之间的复用,项目通常会有多个模块构成。不同的模块,会各自应用自己需要的jar包依赖,就会导致不同的模块引用了不同版本的jar包依赖,从而出现兼容性问题。还有为了方便版本的统一升级维护,防止部分模块的依赖升级,导致项目中的多个版本的同名jar。基于这些原因,使用maven的统一版本管理就可以解决类似的问题。

    代码示例

    父 pom.xml配置示例

    通常会写一组 标签,在标签中定义好版本号。

     <properties>
        <jackson.version>2.8.10</jackson.version>
        <tk.mybatis.version>4.0.0</tk.mybatis.version>
     </properties>
    

    使用${jackson.version}就可以引用上边定义的版本号

    <dependencyManagement>
     <dependencies>
          <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>${jackson.version}</version>
          </dependency>
          <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>${jackson.version}</version>
          </dependency>
          <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-annotations</artifactId>
            <version>${jackson.version}</version>
          </dependency>
          <dependency>
            <groupId>tk.mybatis</groupId>
            <artifactId>mapper</artifactId>
            <version>${tk.mybatis.version}</version>
          </dependency>
     </dependencies>
    </dependencyManagement>
    

    子 pom.xml配置示例

    子模块引用父模块的版本方法 直接写groupId、artifactId就可以,版本就可以自动引用

      <dependency>
             <groupId>com.fasterxml.jackson.core</groupId>
             <artifactId>jackson-core</artifactId>
      </dependency>
    

    为什么用SNAPSHOT?

  • 相关阅读:
    Linux cat
    Linux touch
    Win10 UAP 绑定
    Win10 资源文件
    Win10 启动模拟器
    Win10 安装Vs2015 社区版和企业版各个问题汇总
    Win10 开发者模式开启
    android 入门-本地化语言
    android 入门-基础了解
    wp8 入门到精通 定时更新瓷贴
  • 原文地址:https://www.cnblogs.com/luao/p/10519953.html
Copyright © 2011-2022 走看看