如何获取maven-site-plugin来解析我的multimodule Maven项目的父pom.xml?

时间:2013-03-12 15:58:57

标签: maven maven-site-plugin

我有一个花园品种Maven项目。它有几个模块。因此,根pom.xml以盛大的Maven方式充当父和聚合器。

这个项目构建和安装都很好。

pom.xml继承自公司pom.xml,其节符如下:

<parent>
  <groupId>foo</groupId>
  <artifactId>bar</artifactId>
  <version>16</version> <!-- look, Ma, no SNAPSHOT -->
</parent>

当我针对此根mvn site运行pom.xml时,maven-site-plugin版本3.2报告无法解析父版本。

父母当然存在于我的本地存储库和我当地的Nexus中。生命周期的其他阶段没有任何解决父母的问题。

其他人有reported这个问题。还有another StackOverflow question on this subject但是它的问题与我的问题完全相同并不是很明显。

<relativePath/>添加到上面的<parent>节(我的第一个想法)并未以任何方式改变行为。

如何让maven-site-plugin解析父pom.xml

3 个答案:

答案 0 :(得分:8)

这是Maven网站插件中的bug。由于各种原因,Maven站点插件只会在它认为是Maven central的内容中寻找依赖关系。

因此你要么:

  1. 通过您自己的Nexus服务器拥有代理中心的<mirror>元素。
  2. 在您的本地Maven存储库中,找到父pom工件区域。编辑其_maven.repositories文件,以便将任何提及的存储库名称本身替换为空字符串。
  3. 我选择了后一种选择。在此之后,构建运行良好。

答案 1 :(得分:1)

显然,降级到3.3的网站插件也可以。 : - (

答案 2 :(得分:0)

  1. 文件名为_remote.repositories(Maven 3.1.1)注释掉这些行也是有效的。