maven的統一版本管理實踐

爲何要使用maven的統一版本管理?

在進行項目開發的時候,咱們使用maven來作項目的構建和管理。爲了方便項目中各個模塊之間的複用,項目一般會有多個模塊構成。不一樣的模塊,會各自應用本身須要的jar包依賴,就會致使不一樣的模塊引用了不一樣版本的jar包依賴,從而出現兼容性問題。還有爲了方便版本的統一升級維護,防止部分模塊的依賴升級,致使項目中的多個版本的同名jar。基於這些緣由,使用maven的統一版本管理就能夠解決相似的問題。mybatis

代碼示例

父 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?

相關文章
相關標籤/搜索