【发布时间】:2018-12-11 10:08:28
【问题描述】:
我想将几个模块打包成一个可执行的 JAR 文件。 为此,我正在使用 Maven Shade。 例如,这 5 个模块称为 A、B、C、D、E。 模块 B、C、D、E 在它们的每个 pom 中都依赖于项目 A。
为了构建这个 JAR,我创建了一个包含这些定义的父模块:
<module>A</module>
<module>B</module>
<module>C</module>
<module>D</module>
<module>E</module>
然后,在依赖于其他项目的项目 A 中,我定义了 Maven 阴影插件。问题是我必须指定对其他项目的依赖关系,以便它可以打包并考虑 JAR 中的其他项目。但是这些其他项目已经在他们的 pom 中定义了对项目 A 的依赖。
所以我有一个依赖的循环引用:
项目A到B、C、D、E中的一个来打包JAR文件
项目 B、C、D 和 E 到 A 中的那些,以便使用 A 中的内容
你知道我应该如何在这个架构中指定一种方法,不具有这样的循环引用并具有我想要的行为吗?
谢谢!
【问题讨论】:
标签: java maven build maven-shade-plugin