Maven插件配置中包含另一个pom文件

7

有没有一种方法可以在Maven pom中包含另一个pom或信息?

我有几个pom,它们基本上没有关联或具有不同的父pom。尽管如此,为了打包,需要所有项目都具有相同的清单。

因此,目前在一个pom中:

<plugin>
  <artifactId>maven-assembly-plugin>
   <!--- .... -->
    <archive>
      <manifestEntries>
        <build-date>....</build-date>
        <build-nr>.....</build-nr>

我希望避免将此配置粘贴到所有的pom文件中。

那么,如何在没有继承的情况下共享插件的配置呢?

谢谢。

2个回答

6

一种方法是使用pluginManagement部分。在父pom中可以定义plugin配置,并可用于继承的pom,以原样或被覆盖方式使用。

这里是相关的Maven文档。在您的特定情况下,您需要适当地组织您的项目/ poms。


5
唯一正确的答案是使用继承。将此配置包含在一个继承祖先中。由于您已经有现有的父POM,这些必须继承自此新的父POM。如果不可能实现,则重新考虑Maven项目的层次结构,否则您将不得不将相同的配置复制并粘贴到每个文件中,并添加注释指示该部分不能修改/必须与[插入项目列表]保持一致。

简而言之,继承是专门设计用于解决您这种情况的。如果您无法使用它,请不要试图绕过它-重新构建您的POM或复制和粘贴!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接