gpt4 book ai didi

java - 马文 : Does project inheritance or aggregation better support this scenario?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:01:12 26 4
gpt4 key购买 nike

我正在将一个项目从 ant 移植到 maven。该项目由一组核心类组成,这些类被 jar'd 并由 3-4 个其他子项目使用。重要的是(我认为?),核心 jar 有自己的配置,在构建时设置,每个子项目也有在构建时设置的配置。在旧的 Ant 系统中,任何时候我用类似...构建子项目之一

ant -Dconfiguration=stage clean dist

...它将使用相同的(阶段)配置构建核心 jar,并将其复制到子项目构建的类目录中。我想使用 maven 复制这个功能。从我所做的阅读来看,Maven 似乎可以使用项目继承或聚合来处理这个问题。这两种方法之间的主要区别是什么?对于我描述的用例,您会推荐哪种方法?

最佳答案

继承用于在您的项目之间共享公共(public)事物,例如第 3 方库依赖项或属性,或 scm 位置。聚合用于将您的项目构建为一个组。您需要聚合,但这并不意味着您不会使用继承来分解出共同的东西。

更新:还要记住 Maven 不仅仅是关于构建(不像 ant),它是关于依赖管理,所以你可以只在你的核心上创建依赖而不使用聚合。您将依赖于您的核心的特定版本。然而,这并不能满足您一次构建所有内容的要求。

关于java - 马文 : Does project inheritance or aggregation better support this scenario?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6541499/

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