关于<dependencyManagement>和<dependencies>

编程入门 行业动态 更新时间:2024-10-24 01:53:56

关于<<a href=https://www.elefans.com/category/jswz/34/1630367.html style=dependencyManagement>和<dependencies>"/>

关于<dependencyManagement>和<dependencies>

dependencyManagement

作用:项目存在多个子模块,模块间引入相同的依赖项,为了项目的正确运行,避免依赖项版本冲突,管理依赖项,保证各模块依赖项版本号一致

项目顶层的 父pom文件中dependencyManagement元素。通过它来管理jar包的版本,让子模块中引用一个依赖而不用显示的列出版本号。子模块不指定依赖版本号时,maven会沿着子模块向上走,直到找到一个拥有dependencyManagement元素的项目,然后它就会使用在这个dependencyManagement元素中指定的版本号。

父pom:

<dependencyManagement><dependencies><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.3.1</version></dependency><dependencies>
</dependencyManagement>

子pom:

<dependencies><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId></dependency>
</dependencies>

dependencies 

相对于dependencyManagement,如果在父pom文件中通过dependencies引入jar,将默认被所有的子模块继承。
子模块如果希望有自己个性化的内容,可以在子模块中对于其中的某个属性进重新定义。

父 pom:

<dependencyManagement><dependencies><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>3.1</version></dependency></dependencies>
</dependencyManagement>

子pom:

(<exclusions><exclusion>作用:排除关联依赖的引入)

<dependencies><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>3.2</version><exclusions><exclusion><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId></exclusion></exclusions></dependency>
</dependencies>

dependencies :即使在子项目中不写该依赖项,那么子项目仍然会从父项目中继承该依赖项(全部继承)

dependencyManagement :只是声明依赖,并不实现引入,因此子项目需要显示的声明需要引用的依赖。如果不在子项目中声明依赖,是不会从父项目中继承下来的;只有在子项目中写了该依赖项,并且没有指定具体版本,才会从父项目中继承该项,并且version和scope都读取自父pom;另外如果子项目中指定了版本号,那么会使用子项目中指定的版本。

参考链接:

更多推荐

关于<dependencyManagement>和<dependencies>

本文发布于:2023-11-15 21:45:22,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1606808.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:dependencyManagement   dependencies

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!