首页 > 解决方案 > Maven 创建具有相同依赖项的多模块

问题描述

我正在尝试创建一个具有相同依赖项的多模块项目。

例如,我有:

Module A (parent)
    | Module B
    | Module C

模块 B 和 C 使用完全相同的依赖项,并且每个仅包含 1 个类。我希望每个模块都构建自己的 JAR。问题是,我不想构建胖 jar(因为我将来会有很多这样的模块)

模块 B 和 C 有没有办法使用相同的依赖项?我尝试使用dependencyManagement,但这不是我想要的,因为两个jar 都包含依赖项,我不想要那个。

有没有办法做到这一点?也许通过拥有一个仅包含依赖项的模块 D 并且每个 jar 将使用“D.jar”?但是如何链接模块 B 和 C 以使用 D 依赖项?

Module A (parent)
   | Module D
       | Module B
       | Module C

标签: javamaven

解决方案


您可以自己编写一个单独pom.xml的工件。

这个 pom 将具有您的依赖项xy。然后你让你的模块依赖于这个 pom(通过它的组、工件和版本)。


推荐阅读