maven:使用相同的pom文件生成几个"工件"?

fge*_*fge 11 maven

这里有一个项目,目前使用一个pom.xml(链接)来生成一个"工件".

我想做的是拆分项目,我们称之为p,进入:

  • p-core,包含核心验证过程;
  • p格式,包含"格式"关键字验证,它取决于p-core.

我想要这样做的原因是依赖性:p-format仅在卷中占据了70%以上,并且JSON Schema的许多用法无论如何都需要格式支持.

我是否需要构建两个完全独立的项目,或者我可以使用一个pom.xml来生成这两个工件吗?我猜后者是可行的,因为很多项目已经做到了(例如杰克逊).

[如果它有任何重要性,我通过Sonatype的maven repo发布]

Mic*_*ski 10

您应该创建两个独立的项目(两个独立的POM),但可能一个好主意是为它们创建公共父项,并将它们聚合为模块.查看POM简介的Project InheritanceProject Aggregation部分,了解一些基础知识.

在Maven中,尝试破解它从来不是一个好主意,因此它会从一个POM产生许多不同的工件.

  • 我认为在您的情况下,最好在子目录中创建父级“p​​om.xml”和两个模块,该父级也聚合为模块。查看这些链接以获取详细信息和示例。 (2认同)