dependencyManagement与dependencies的区别

dependencyManagement和dependencies在Maven中的作用不同。dependencyManagement用于声明依赖管理,允许子项目无需指定版本即可引用,但子项目仍需明确声明依赖。dependencies则会直接引入依赖并继承给所有子项目。子项目若指定版本,则优先使用子项目版本。dependencyManagement中的未找到依赖不会影响子项目实际构建。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • dependencyManagement:用于父类管理,一般顶层的父类pom才有

    • 能让所有在子项目中引用一个依赖而不用显式的列出版本号

    • dependencyManagement里只是声明依赖,并不实现引入,子项目需要显示的声明需要用的依赖

    • 如果不在子项目中声明依赖,是不会从父项目中继承下来的

    • 只有在子项目中写了该依赖项,并且没有指定具体版本,才会从父项目中继承该项,并且version和scope都读取自父pom

    • 如果子项目中指定了版本号,那么会使用子项目中指定的版本。(类似方法重写)

  • dependencies:自动引入声明在dependencies里的所有依赖,并默认被所有子项目继承。

    • 子项目会从父项目继承(属性全部继承)声明在父项目dependencies里的所有的依赖项

注意:dependencyManagement里面的依赖爆红是因为你的仓库里没有该依赖,子模块真正导入的使用下载依赖就好了,所以dependencyManagement里面的依赖爆红不用管

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

龙域、白泽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值