[英]maven dependency managment and version change of transitive dependency
如何安全地管理此类问题:
在 maven 中,我们有 2 个依赖于 C(分别为 1.0 和 1.1)的库(A 版本为 20,B 版本为 30)。 我们在目标库中得到了 jar 地狱
*--A20--C1.0
\--B30--C1.1
然后我添加dependencyManagment 部分并强制C 版本为1.1。 它按预期工作。
*--A20--C1.1 (not C1.0)
\--B30--C1.1
几个月后,我们决定将 A 升级到 50 版。现在它依赖于 C 2.0 版。 但是由于依赖管理,项目仍然使用 1.1。 现在是个问题
*--A50--C1.1 (not C2.0 as needed)
\--B30--C1.1
问题是:是否可以覆盖传递依赖,并且只有传递依赖的版本与我们设置的版本匹配时,这个覆盖才会起作用? 否则这个覆盖将被忽略,我们会看到一个错误(例如在 maven-enforcer 插件的帮助下)我想知道我们是否有一些插件来检查这种情况?
不。
我了解您的用例,但我在 Maven 中看不到任何东西可以产生您想要的结果。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.