Maven中的dependencyManagement理解

版权声明:转载请注明出处 https://blog.csdn.net/yrwan95/article/details/88053422

Maven中的dependencyManagement相当于一个对所依赖jar包进行版本管理的管理器。


pom.xml文件中,jar的版本判断的两种途径:

1、如果dependencies中的dependency未声明version,则Maven会去dependencyManagement里寻找是否有对应的版本声明,如有,则继承,如果无,则报错;

2、如果dependencies中的dependency声明了version,无论dependencyManagement中有无对该jar的version声明,都以dependency里的version为准。

好处:方便统一管理项目的版本号,确保各个子项目的依赖和版本一致。同时可避免在每个子项目中都声明一个版本号,当升级到另一个版本时,只需要在父类pom中更新,无需修改任何一个子项目;如某个子项目需要另一个版本号时,只需在dependencies中声明一个版本号即可,此时子类就会使用子类声明的版本号,不继承父类版本号。
 


<!--只是对版本进行管理,不会实际引入jar-->
<dependencyManagement>  
    <dependencies>  
        <dependency>  
            <groupId>org.springframework</groupId>  
            <artifactId>spring-core</artifactId>  
            <version>3.2.7</version>  
        </dependency>  
    </dependencies>  
</dependencyManagement>  

<!--会实际下载jar包-->
<dependencies>  
    <dependency>  
        <groupId>org.springframework</groupId>  
        <artifactId>spring-core</artifactId>  
    </dependency>  
</dependencies>

猜你喜欢

转载自blog.csdn.net/yrwan95/article/details/88053422