gpt4 book ai didi

java - 不相关项目之间的共享依赖关系

转载 作者:行者123 更新时间:2023-11-30 03:53:25 26 4
gpt4 key购买 nike

我们正在考虑使用自定义 super POM 来维护多个不相关项目中存在的常见 Spring、Hibernate、Logging 依赖项。

这些项目有不同的发布周期,以满足不同的业务功能。

我们想要这样做的原因是

  1. 确保整个组织采用通用框架,以便更好地进行 future 维护
  2. 确保操作系统版本的升级不会对需要升级每个项目的多个项目产生链式效应。

我的问题是:

  • a) 这种方法有意义吗?如果我需要升级项目 B 怎么办依赖关系,这难道不值得对项目 A 进行更改吗?项目C?

    b) 有没有办法强制运行 Maven - Enforcer 插件每次为项目运行构建时?

    c) 拥有共同依赖项的其他优势可能是什么在 Super POM 中维护?

提前致谢。

最佳答案

总的来说,这是有道理的。但这取决于您的实际用例。例如,我不会为 log4j 执行此操作,但与安全相关的依赖项可能有意义,因为您不想发布不安全的东西,是吗?

当然,您可以将执行器插件绑定(bind)到某个后期阶段。

对于不相关的项目,我认为 super POM 没有太多优势。我使用它的唯一原因是确保与安全相关的东西(如 jasypt 或 spring-security)保持最先进的状态。

您可以使用BOM pattern described in the maven docs .

关于java - 不相关项目之间的共享依赖关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23831680/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com