顶层 pom 中的 dependencies 与 dependencyManagement 区别
作者:Yan
顶层 pom 中的 dependencies 与 dependencyManagement 中的 dependencies 元素有一个重要的区别:
dependencyManagement 中的 dependencies 元素只表明依赖项版本的优先选择,并不影响项目的依赖项;而 dependencies 元素则影响项目的依赖项。
只有在子项目的dependencies 元素中没有指明版本信息时, dependencyManagement 中的dependencies 元素才起作用。
dependencies 和 dependencyManagement 的区别在于:
前者,即使在子项目中不写该依赖项,那么子项目仍然会从父项目中继承该依赖项。
后者,如果在子项目中不写该依赖项,那么子项目中是不会从父项目继承该依赖项的;只有在子项目中写了该依赖项,才会从父项目中继承该项,并且version 和 scope 都读取自 父pom。
两者是结合起来用互补:dependencies用来继承,具有依赖传递性;dependencyManagement用来统一管理依赖版本,不具有依赖传递性!
顶层 pom 中的 dependencies 与 dependencyManagement 区别相关推荐
- maven中的dependencies与dependencyManagement 对依赖管理的区别
1. dependencyManagement对所依赖jar包进行版本管理, 而dependencies中的jar直接加到项目中. 2. dependencies即使在子项目中不写该依赖项,那么子项目 ...
- Maven中dependencies与dependencyManagement的区别
之前在一个开源项目代码中看到有人在maven的依赖中使用 dependencyManagement,由于对这个不是很了解,忽然发现网上有个大神已经写了一个比较好的博客,因此这里直接转载(https:/ ...
- eclipse新建的maven项目没有dependencies_Maven中dependencies与dependencyManagement的区别
1.DepencyManagement应用场景 当我们的项目模块很多的时候,我们使用Maven管理项目非常方便,帮助我们管理构建.文档.报告.依赖.scms.发布.分发的方法.可以方便的编译代码.进行 ...
- maven 中 dependencies 与 dependencyManagement 的区别
前言 当前的团队工程项目是一个 maven 工程,里面有多模块,包含了父 pom 与子 pom.而在父 pom 中,我见到了 dependencyManagement 这个东西.我们知道一个 mave ...
- MAVEN dependencies与dependencyManagement的区别
在上一个项目中遇到一些jar包冲突的问题,之后还有很多人分不清楚dependencies与dependencyManagement的区别,本篇文章将这些区别总结下来. 1.DepencyManagem ...
- 转载:Maven实战—Dependencies与DependencyManagement的区别
致敬作者,支持原创.原文地址:https://www.cnblogs.com/feibazhf/p/7886617.html 在上一个项目中遇到一些Jar包冲突的问题,之后还有很多人分不清楚Depen ...
- dependencies与dependencyManagement的区(转自:http://blog.csdn.net/liutengteng130/article/details/46991829)
在上一个项目中遇到一些jar包冲突的问题,之后还有很多人分不清楚dependencies与dependencyManagement的区别,本篇文章将这些区别总结下来. 1.DepencyManagem ...
- Maven实战 | dependencies与dependencyManagement
今天在maven的pom文件中看到了dependencyManagement标签,用法如下: <dependencyManagement><dependencies><d ...
- Maven 父pom中dependencyManagement版本优先级高于传递依赖版本
当使用了传递依赖,也就是使用了没有显示声明的依赖时,如果继承的<dependencyManagement/>中声明了使用的传递依赖的版本,那么最终使用的依赖是<dependencyM ...
最新文章
- HDU 6015 Skip the Class
- JS基础之undefined与null的区别
- struts2 redirect 获取参数null_社会化登录支持授权域以便于获取更大权限
- centos 修改开机画面
- MySQL 一张表中两个字段值互换
- [3G/4G]3G/4G模块开发
- OCR文字识别技术总结(三)
- onmounted vue3_Vue3.x 生命周期 和 Composition API 核心语法理解
- 奔跑中的2015 — 提剑的少年
- Atitit 风控之道 attilax著 风险控制 1. 融资风险控制	3 1.1. 风险控制基本知识	3 2. 第8 章 项目风险的分类管理 156	4 2.1. 8.1 项目风险分类 156	4
- NXP RT1062 flashloader下载程序到RAM执行
- 基于Java医院网上预约挂号系统设计与实现(含源代码)
- 计算机毕业设计JavaVue.js音乐播放器设计与实现(源码+系统+mysql数据库+lw文档)
- Excel学习日记:L21-表格数值格式
- PHP简单MVC架构
- matlab中文帮助_MATLAB数据及图像处理与机器学习培训
- IntelliJ IDEA 工具技巧
- python-猜数字游戏(0-9)
- 如何修改文件的 “创建时间” 和 “修改时间” (macOS, Linux, Windows) 2023 修正版
- Android 开发飞机大战