How can I get the maven-site-plugin to resolve the

2020-07-17 07:35发布

I have a garden variety Maven project. It has several modules in it. Thus the root pom.xml serves as both parent and aggregator in grand Maven fashion.

This project builds and installs fine.

The root pom.xml inherits from a corporate pom.xml with a stanza like this:

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

When I run mvn site against this root pom.xml, the maven-site-plugin version 3.2 reports that it cannot resolve the parent.

The parent is of course present in my local repository and in my local Nexus. No other phase of the lifecycle has any trouble resolving the parent.

Others have reported this issue. There is also another StackOverflow question on this subject but it was not immediately apparent that its issue was the exact same as mine.

Adding <relativePath/> to the <parent> stanza above (my first thought) did not alter the behavior in any way.

How can I get the maven-site-plugin to resolve the parent pom.xml?

3条回答
The star\"
2楼-- · 2020-07-17 08:16

This is a bug in the Maven site plugin. The Maven site plugin for various reasons will only ever look for dependencies in what it thinks is Maven central.

Therefore you either have to:

  1. Have a <mirror> element that proxies central through your own Nexus server.
  2. In your local Maven repository, find the parent pom artifact area. Edit its _maven.repositories file so that any mention of the repository name itself is replaced with an empty string.

I chose the latter option. After this the build runs fine.

查看更多
叼着烟拽天下
3楼-- · 2020-07-17 08:25
  1. File name is _remote.repositories (Maven 3.1.1) Commenting out the lines work as well.
查看更多
小情绪 Triste *
4楼-- · 2020-07-17 08:31

Apparently downgrading to 3.3 of the site plugin can also work. :-(

查看更多
登录 后发表回答