是否有任何理由在Maven中为我自己的传递依赖保留显式依赖声明?

 Ki丶ng-james-LBJ威_112 发布于 2023-02-07 20:05

我已经阅读了一段时间关于Maven中的显式与传递(隐式)依赖声明.大多数人倾向于同意您应该始终明确声明项目所依赖的库,主要是为了避免版本不匹配.

这是完全合理的,但我们应该如何处理我们的内部依赖?我认为绝对没有理由保持模块之间的显式依赖关系,如果它们可以通过传递机制解决.

我的用例场景:

我的团队在major.minor.micro发布周期中开发软件,例如:1.1.1,1.1.2,1.3.0等......

在每个版本中,我们为项目中的所有模块增加版本控制方案(因此A:1.0,B:1.0变为A:1.1,B:1.1)

我们正在使用反应堆项目,嵌套到两层深

我的直觉告诉我 - 摆脱依赖意大利面条.谁会证明我错了?Reactor(依赖)图表非常受欢迎:-)

一个例子:

我的父项目使用以下模块(省略外部依赖项):

Project:1.1   
 - core:1.1
 - +-- util:1.1 
 -   +-- xml-helper:1.1
 - logic:1.1
 - +-- util:1.1 
 -   +-- xml-helper:1.1
 - gui:1.1

问题是:我应该xml-helper:1.1core's和logicpom.xml中声明为依赖吗?当我使用util模块时,该依赖关系将自动解决(传递).

如果我宣布它,我会得到一个更大的pom来维持.

如果我跳过它,当依赖关系随着时间的推移而演变时,我可能会遇到麻烦.

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有