maven - Maven父POM根据父POM维护库版本?
问题描述
我有一个 Maven 聚合父 POM foobar-parent
,它有两个聚合的子节点,foo
并且bar
在同一个存储库中。
例如,我widgets
在另一个依赖于 的存储库中命名了另一个非常酷的库foo
。
然后我有许多其他库,例如example
and app
,它们可能依赖于foo
,bar
和/或widgets
. 但它们都foobar-parent
用作它们的父 POM。
foobar-parent
父 POM 已经在其依赖管理中指明了版本和版本foo
。bar
但是因为有这么多库使用widgets
,我想确保所有库都使用相同的widgets
版本。widgets
那么在父 POM 中进行版本管理是否会有任何问题foo-bar
,即使它widgets
本身依赖于foo
and bar
,并且widgets
POMfoobar-parent
作为其父 POM?
(这不应该是循环依赖,因为foobar-parent
它没有定义widgets
为依赖——它只为任何widgets
用作依赖的库定义其版本。)
解决方案
由于您已经提到的原因,从技术上讲,这应该不是问题。
从组织的角度来看,我会考虑将聚合器 pom 与组织依赖管理的 pom 区分开来,我的意思是:您可以引入第二级父 POM。
推荐阅读
- visual-studio-code - 有没有办法禁用保存某个文件的选项?
- amazon-web-services - 如何将 AWS DynamoDB 表导出到 S3 存储桶?
- oracle - 如何使用绑定变量转换为物化视图查询
- node.js - 当我使用邮递员并单击发送时,出现错误
- appdynamics - Appdynamics 监控 URL/页面可用性
- c++ - 为什么这个 C++ 程序不打印任何东西?
- r - 从目标字符串的开头提取字符串到字符
- javascript - 在 HTML 中看到的 Javascript 事件?
- mysql - 在哪里实现mysql连接以避免错误?
- node.js - 如何解决以下打字稿错误:“找不到命名空间'fastify'”?