2013-02-08 534 views
3

通常情况下,一个maven构建的jar神器会将它包含在META-INF下。我最近注意到Spring的罐子没有这个。所以,这让我想到那个pom的目​​的。jar的META-INF文件夹中的pom.xml的用途是什么?

似乎maven在处理需要知道工件元数据的事情时直接从存储库中检索pom,例如,当确定依赖关系时。

那么,什么是嵌入式的?

+0

可能的重复[Maven在JAR文件中放置的POM文件的意义是什么?它被任何东西使用?](http://stackoverflow.com/questions/1677994/what-is-the-significance -of-the-pom-file-that-maven-in-a-jar-file-is-it) – sleske 2016-04-26 09:16:49

回答

2

Maven文档提出了pom在这个位置的两个原因。

1)仅供参考,作为方便。正如文档所说,它会使工件“自描述”

2)您可以使用Java从应用程序中获取此信息。这使得arfiact可以在应用程序中自动报告它的版本。

+0

我在jar插件中添加属性来指定jar文件的位置。但是在那个位置,maven不会导出用于生成jar的pom.xml文件。你能否告诉我如何将pom.xml导出到复制插件以外的同一位置。 – Manu 2013-05-21 07:35:46

3

你会在仓库中发现的POM不一定用于构建神器之一。它针对工件的用户,并且可以在构建工件时自定义。

工件内包含的工件是用于生产工件的工件。 有些选项可能不包含在工件中。

相关问题