From 4e82276cc1c9e4f80d09ebffa3e59cb16bcfecba Mon Sep 17 00:00:00 2001 From: MateusJunior7 Date: Sun, 16 Nov 2025 18:58:44 -0300 Subject: [PATCH 1/3] Fix UWF_NULL_FIELD: initialize mojoDependencies list --- .../apache/maven/plugin/plugin/DescriptorGeneratorMojo.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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 fb3fb75c..f1f0c079 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. From c3e2a8e06785e78641e019aafbbd49340b8c6559 Mon Sep 17 00:00:00 2001 From: MateusJunior7 Date: Sun, 16 Nov 2025 19:25:06 -0300 Subject: [PATCH 2/3] Check mkdirs() return value when creating outputDirectory --- .../maven/plugin/plugin/DescriptorGeneratorMojo.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) 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 f1f0c079..f289e215 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 @@ -373,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); From c44d3906033cab2885fe50dfbbcf8e48c196854a Mon Sep 17 00:00:00 2001 From: MateusJunior7 Date: Sun, 16 Nov 2025 20:56:53 -0300 Subject: [PATCH 3/3] Narrow exception type in generateIndex(): replace catch(Exception) with catch(IOException) --- .../org/apache/maven/plugin/plugin/DescriptorGeneratorMojo.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 f289e215..4b4acecc 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 @@ -465,7 +465,7 @@ public AnnotationVisitor visitAnnotation(String descriptor, boolean visible) { w.write(content); } } - } catch (Exception e) { + } catch (IOException e) { throw new GeneratorException("Unable to generate index for v4 beans", e); } }