Maven Project Parent POM

This POM is the common parent of all of the Maven components in the Apache Maven project. Most of its contents are pinning down version numbers of plugins. It does provide minimal dependencyManagement for plexus-component and plugin-tools annotations.

The reporting Profile

The jdk-toolchain Profile

This POM provides jdk-toolchain profile to activate JDK selection as a toolchain with version requirement configured as minimum java version for the project.

Site Publication

This POM prepares site publication to Apache Maven's site svnpubsub. Every inheriting POM needs to define maven.site.path property with relative path to ${project.artifactId}-LATEST publication uri, and define distributionManagement to avoid automatic inheritance from parent:

History

As of version 27, this POM sets the Java source and target versions to 1.6. Thus, as any plugin (or other component) moved to version 27+ of this POM, it moves to requiring Java 1.6 (was Java 1.5 since version 21).