【发布时间】:2016-06-04 10:03:57
【问题描述】:
我想使用 maven shade 来创建一个 shaded jar,但我也想只在 shaded jar 的情况下包含一个特殊的依赖项(而不是在我的项目的正常编译依赖项中)。我该怎么办?
据我了解,包含/排除只是白名单/黑名单,因此我无法明确强制包含未包含在实际依赖项列表中的内容。
关于更多上下文,我有一个 JAR 依赖项,其中包含一个我只想包含在我的阴影工件之一中的资源,但在类路径中包含该 jar 否则会导致错误。
明确地说,我希望在一个 mvn package 调用中生成一个带有附加依赖项的阴影 jar 和一个没有它的普通 jar。
【问题讨论】:
-
然后修正你的错误。老实说,越简单越好。使用配置文件会起作用,但它会使一切变得比它需要的更复杂。避免变通方法。让您的生活更轻松。
-
这不是你可以“修复”的。这些本质上是两个罐子中包含的相互排斥的配置。要发布的二进制文件之一需要特定配置,另一个则需要另一个。配置文件是解决方案,而不是解决方法。
标签: java maven jar maven-shade-plugin