1. 程式人生 > >Maven項目中如何對具有繼承關系的項目的jar進行統一管理

Maven項目中如何對具有繼承關系的項目的jar進行統一管理

不用 man 配置 maven rop 繼承關系 model art xmlns

Maven項目中如何對具有繼承關系的項目的jar進行統一管理

1.Parent父項目:pom.xml配置

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.bj</groupId>
  <artifactId>parent</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>pom</packaging>
  <build/>
  <modules>
    <module>child3</module>
  </modules>
  <properties>
     <proj-version>0.0.1-SNAPSHOT</proj-version>
  </properties>
  <dependencyManagement>
  <dependencies>
    <dependency>
        <groupId>com.abc</groupId>
        <artifactId>test</artifactId>
        <version>${proj-version}</version>
    </dependency>
  </dependencies>
  </dependencyManagement>
</project>
(1)說明:proj-version是自定義的,可以隨便命名。這裏用於統一進行版本標識。
(2)獲取proj-version的值,使用${proj-version}。

2.Child子項目:pom.xml配置

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <artifactId>parent</artifactId>
    <groupId>com.bj</groupId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <groupId>com.bj</groupId>
  <artifactId>child</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <build/>
 <dependencies>
    <dependency>
        <groupId>com.abc</groupId>
        <artifactId>test</artifactId>
    </dependency>
  </dependencies>
</project>

(1)說明:雖然子項目繼承父項目,但是如果在父項目中使用 <dependencyManagement>標簽,子項目就沒法使用父項目依賴的jar文件,如果想在子項目中使用父項目依賴的jar,需要在子項目中添加如下:

             <dependencies>
                    <dependency>
                        <groupId>com.abc</groupId>
                            <artifactId>test</artifactId>
                    </dependency>
                </dependencies>
    這樣項目就可以使用父項目依賴的jar文件了,且不用指定jar的版本號version,因為版本號統一在父項目的pom.xml中統一維護。         

**通過以上配置,maven就可以統一對jar的版本進行統一管理了。**

Maven項目中如何對具有繼承關系的項目的jar進行統一管理