Java 超级POM在配置中来自哪里

Java 超级POM在配置中来自哪里,java,eclipse,maven,parent-pom,Java,Eclipse,Maven,Parent Pom,当我在Eclipse中查看我的有效pom时,我可以看到大量依赖项和一个标签,表明这是我们公司的超级pom,它必须构成每个项目的一部分 我无法计算超级pom在配置中的作用。我在maven中查看了我的settings.xml,它有远程存储库和内部存储库的列表,但似乎在任何地方都看不到超级pom的链接 这是一个基于内部原型构建的多模块maven项目,父模块定义了一个父构件……但是当我浏览父构件时,我仍然看不到超级pom是如何发挥作用的 谢谢你的建议 问候 i超级pom由标记定义: <parent

当我在Eclipse中查看我的有效pom时,我可以看到大量依赖项和一个标签,表明这是我们公司的超级pom,它必须构成每个项目的一部分

我无法计算超级pom在配置中的作用。我在maven中查看了我的settings.xml,它有远程存储库和内部存储库的列表,但似乎在任何地方都看不到超级pom的链接

这是一个基于内部原型构建的多模块maven项目,父模块定义了一个父构件……但是当我浏览父构件时,我仍然看不到超级pom是如何发挥作用的

谢谢你的建议

问候


i

超级pom由
标记定义:

<parent>
  <groupId>com.mycompany</groupId>
  <artifactId>mvn</artifactId>
  <version>1.0.0-SNAPSHOT</version>
</parent>

com.mycompany
mvn
1.0.0-SNAPSHOT

所有pom都隐式继承自maven发行版中的
super
pom。此pom包含所有maven项目的默认值,可以在maven项目中覆盖这些默认值。但大多数默认值都不会被覆盖,因为它们通常构成maven的约定部分,因为它是一个更倾向于约定的构建工具。例如,默认构建目录是
target
,因此此配置在super pom中作为

........
<directory>${project.basedir}/target</directory>
.........
。。。。。。。。
${project.basedir}/target
.........

有关此pom的更多信息和实际位置,请参考和

谢谢,尽管这看起来像是一个公司pom,而不是maven发行版的一部分,因为它在有效pom中声明了公司名称,包括hibernate和大量spring依赖项。很好的链接,在你的问题中,我完全漏掉了公司这个词。是的,这是通常的做法,声明一个公司范围(或项目范围)的超级pom,其中提到一般信息,如公司/项目信息,以及从该pom继承的另一个pom,该pom包含所有依赖项,以强制执行标准依赖项版本。收到了,谢谢。通过Nexus中的原型链进行追踪,最终发现我们最终进入了我们的公司超级pom(不同于Maven超级pom)。谢谢大家。