diff --git a/maven-plugin-plugin/src/main/java/org/apache/maven/plugin/plugin/DescriptorGeneratorMojo.java b/maven-plugin-plugin/src/main/java/org/apache/maven/plugin/plugin/DescriptorGeneratorMojo.java index fb3fb75c0..f289e2158 100644 --- a/maven-plugin-plugin/src/main/java/org/apache/maven/plugin/plugin/DescriptorGeneratorMojo.java +++ b/maven-plugin-plugin/src/main/java/org/apache/maven/plugin/plugin/DescriptorGeneratorMojo.java @@ -29,6 +29,7 @@ import java.nio.file.Files; import java.nio.file.Path; import java.util.*; +import java.util.ArrayList; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -196,7 +197,7 @@ public class DescriptorGeneratorMojo extends AbstractGeneratorMojo { * @since 3.5 */ @Parameter - private List mojoDependencies = null; + private final List mojoDependencies = new ArrayList<>(); /** * Creates links to existing external javadoc-generated documentation. @@ -372,7 +373,12 @@ public void generate() throws MojoExecutionException { mojoScanner.populatePluginDescriptor(request); request.setPluginDescriptor(extendPluginDescriptor(request)); - outputDirectory.mkdirs(); + if (!outputDirectory.exists()) { + if (!outputDirectory.mkdirs()) { + throw new MojoExecutionException( + "Could not create output directory: " + outputDirectory.getAbsolutePath()); + } + } PluginDescriptorFilesGenerator pluginDescriptorGenerator = new PluginDescriptorFilesGenerator(); pluginDescriptorGenerator.execute(outputDirectory, request);