4

我有一个项目,它使用 maven-assembly-plugin 打包了几个(可执行 jar)程序集——基本上是相同的代码,但针对不同的客户端具有不同的数据集。

我需要在我的可执行 jar 中使用 spring,并且由于 spring 中的文件命名,我需要转而使用 maven-shade-plugin 来创建 jar。这工作正常,我可以创建可执行 jar,但我无法弄清楚如何将我的其他文件组装到这个新的阴影 jar 中,因为 shade 插件不提供组装插件中可用的许多功能。

阴影插件在程序集之前执行,所以我假设我可以在我的程序集中以某种方式使用阴影工件,但到目前为止我的所有尝试都失败了。是否可以创建一个程序集,该程序集采用现有的阴影 jar 并简单地将二进制文件和其他一些文件注入其中?

4

1 回答 1

4

将 shadedArtifactAttached 设置为 true 将导致 maven 将着色工件而不是原始工件附加到项目。这应该可以解决您的问题。

<shadedArtifactAttached>true</shadedArtifactAttached>
于 2013-10-29T22:20:47.547 回答