简述Maven中的‘传递性’关键词

简介: 简述Maven中的‘传递性’关键词

写在前面


Maven是我们在项目中常用的项目管理工具了,被用于构建和管理各种项目,今天我们的问题呢,就是Maven中的一个关键知识点的解释,那就是传递性。


下面就一起来学习一下吧。


正文


Maven在引入相应的jar包依赖时,由于其它依赖中已然有了某个或者是某些jar包的依赖了,maven会自动将其的依赖关系导入到本依赖模块中。


如,A模块中存在对springboot-web的依赖关系,

这个时候,当B模块中引入A模块的依赖时,springboot-web的依赖将自动传递到B模块中。


此时,B模块中不用再配置springboot-web的依赖了,会根据传递过来的依赖自动导入相应的jar包进去。


这就是maven的传递性,但是由于每个依赖模块都有自己的依赖关系,这个时候就会存在冲突,这里maven是利用了路径最短优先原则,如两者的路径长度相同的情况下,则会根据依赖模块的引入顺序决定使用哪个依赖模块下的依赖jar包。


这里也可以使用exclusions标签进行对部分依赖jar包的手动剔除,以避免依赖冲突导致项目启动或者开发过程中的部分问题。


总结


Maven的传递性给开发者节省了很多的时间,只要能有效的处理依赖冲突的问题就可以了。


相关文章
|
Java Maven
Maven【3】( 依赖的范围,传递性和依赖的排除)(命令行操作)
Maven【3】( 依赖的范围,传递性和依赖的排除)(命令行操作)
142 0
|
Java Maven Spring
[Maven实战](9)传递性依赖
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/SunnyYoona/article/details/50612701 了解Spring的朋友都知道,创建一个Spring Framework项目都需要依赖什么样的Jar包。
1169 0
|
2月前
|
Java 区块链 Maven
关于引入maven项目后出现‘parent.relativePath’ of POM错误时的解决方法
关于引入maven项目后出现‘parent.relativePath’ of POM错误时的解决方法
288 3
|
1月前
|
Java jenkins 应用服务中间件
结合Jenkins与Tomcat,实施Maven项目的自动构建和部署流程。
任何项目构建和部署的自动化流程,总离不开对各个环节精细把控与密切配合。涉及到源代码管理、构建工具、持续集成服务器以及最终的运行时环境的协调。通过上述简洁实用的步骤,可以实现Maven项目从源代码到运行状态的无缝过渡,进而提升软件开发的效率与质量。
192 0
|
Java Maven 开发者
maven项目中官方setting.xml文件
`settings.xml` 是 Maven 的配置文件,用于定义用户或全局级别的构建行为。它包含本地仓库路径、网络代理、服务器认证、仓库镜像及构建配置文件等设置,帮助开发者根据环境定制 Maven 行为,提升构建效率与灵活性。
618 0
|
4月前
|
Java 测试技术 项目管理
【JavaEE】从 0 到 1 掌握 Maven 构建 Java 项目核心技巧 解锁 Java 项目高效管理实用实例
本文从Maven基础概念讲起,涵盖安装配置、核心概念(如POM与依赖管理)及优化技巧。结合Java Web项目实例,演示如何用Maven构建和管理项目,解决常见问题,助你高效掌握这一强大工具,提升Java开发与项目管理能力。适合初学者及进阶开发者学习。资源链接:[点此获取](https://pan.quark.cn/s/14fcf913bae6)。
160 6
|
10月前
|
XML Java 测试技术
从零开始学 Maven:简化 Java 项目的构建与管理
Maven 是一个由 Apache 软件基金会开发的项目管理和构建自动化工具。它主要用在 Java 项目中,但也可以用于其他类型的项目。
314 1
从零开始学 Maven:简化 Java 项目的构建与管理
|
11月前
|
Java 关系型数据库 MySQL
Maven——创建 Spring Boot项目
Maven 是一个项目管理工具,通过配置 `pom.xml` 文件自动获取所需的 jar 包,简化了项目的构建和管理过程。其核心功能包括项目构建和依赖管理,支持创建、编译、测试、打包和发布项目。Maven 仓库分为本地仓库和远程仓库,远程仓库包括中央仓库、私服和其他公共库。此外,文档还介绍了如何创建第一个 SpringBoot 项目并实现简单的 HTTP 请求响应。
879 1
Maven——创建 Spring Boot项目

推荐镜像

更多