Nice spot, just tried to work that one out myself. My guess is... the documentation generation plugin has been updated and it now skips/ignores required properties.
If you compare those two plugins, you can see resources was last published 1.5 years ago; maven-resources-plugin is 2.7, last updated 2014-09-29 maven-compiler-plugin is 3.5.1, last updated 2016-02-06 If a new resources plugin occurs and it's updated to use new dependencies/plugins, I would bet it doesn't have the required properties section. Anyway, my view would be this is a bug/defect with the documenation plugin skipping/ignoring required properties. As you have highlighted the compiler doesn't document it uses of ${project.build.outputDirectory}, and if you look at latest file you can see more required properties are also not listed. https://github.com/apache/maven-plugins/blob/cb254e434a40b7ff58c936abbb3f823029a0e466/maven-compiler-plugin/src/main/java/org/apache/maven/plugin/compiler/CompilerMojo.java John On 13 April 2016 at 22:26, Raffaele Esposito <rafaelral...@gmail.com> wrote: > Hi all, > > In the Maven super-pom.xml definition (4.0.0) > in the build section are defined some configuration parameters, > such as: > > <build> > > <directory>${project.basedir}/target</directory> > > <outputDirectory>${project.build.directory}/classes</outputDirectory> > <directory>${project.basedir}/target</directory> > > <outputDirectory>${project.build.directory}/classes</outputDirectory> > <finalName>${project.artifactId}-${project.version}</finalName> > > <testOutputDirectory>${project.build.directory}/test-classes</testOutputDirectory> > <sourceDirectory>${project.basedir}/src/main/java</sourceDirectory> > ...<build> > > Now let's take for example : > <outputDirectory>${project.build.directory}/classes</outputDirectory> > > *resources:resources* plugin goal uses it, as described in the > documentation: > > Name Type Since Description outputDirectory File - The output > directory into which to copy the resources. Default value is: > ${project.build.outputDirectory}. > > *compiler:compile* plugin goal uses it as well (I guess), > but it is nowhere defined in the documentation of that plugin. Why is that > ? is it a lack in the specification or what ? > am I missing something ? >