This is an automated email from the ASF dual-hosted git repository.

desruisseaux pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-compiler-plugin.git


The following commit(s) were added to refs/heads/master by this push:
     new be18137  Suport command line paramenters for incremental build (#958)
be18137 is described below

commit be18137cc32002856745be14ddb2869dffa35f0a
Author: zhaoyunxing <zhaoyunx...@apache.org>
AuthorDate: Thu Sep 18 16:18:49 2025 +0800

    Suport command line paramenters for incremental build (#958)
---
 .../maven/plugin/compiler/AbstractCompilerMojo.java | 21 ++++++++++-----------
 .../apache/maven/plugin/compiler/ToolExecutor.java  |  3 ---
 2 files changed, 10 insertions(+), 14 deletions(-)

diff --git 
a/src/main/java/org/apache/maven/plugin/compiler/AbstractCompilerMojo.java 
b/src/main/java/org/apache/maven/plugin/compiler/AbstractCompilerMojo.java
index 57b3c61..c2f7a50 100644
--- a/src/main/java/org/apache/maven/plugin/compiler/AbstractCompilerMojo.java
+++ b/src/main/java/org/apache/maven/plugin/compiler/AbstractCompilerMojo.java
@@ -623,7 +623,7 @@ public abstract class AbstractCompilerMojo implements Mojo {
      * @see #createMissingPackageInfoClass
      * @since 4.0.0
      */
-    @Parameter // The default values are implemented in 
`incrementalCompilationConfiguration()`.
+    @Parameter(property = "maven.compiler.incrementalCompilation")
     protected String incrementalCompilation;
 
     /**
@@ -679,7 +679,7 @@ public abstract class AbstractCompilerMojo implements Mojo {
      * @see #incrementalCompilation
      * @since 3.1
      */
-    @Parameter
+    @Parameter(defaultValue = "class,jar")
     protected List<String> fileExtensions;
 
     /**
@@ -1074,19 +1074,18 @@ public abstract class AbstractCompilerMojo implements 
Mojo {
      * @throws IOException if this method needed to read a module descriptor 
and failed
      */
     boolean hasModuleDeclaration(final List<SourceDirectory> roots) throws 
IOException {
-        switch (project.getPackaging().type().id()) {
-            case Type.CLASSPATH_JAR:
-                return false;
-            case Type.MODULAR_JAR:
-                return true;
-            default:
+        return switch (project.getPackaging().type().id()) {
+            case Type.CLASSPATH_JAR -> false;
+            case Type.MODULAR_JAR -> true;
+            default -> {
                 for (SourceDirectory root : roots) {
                     if (root.getModuleInfo().isPresent()) {
-                        return true;
+                        yield true;
                     }
                 }
-                return false;
-        }
+                yield false;
+            }
+        };
     }
 
     /**
diff --git a/src/main/java/org/apache/maven/plugin/compiler/ToolExecutor.java 
b/src/main/java/org/apache/maven/plugin/compiler/ToolExecutor.java
index de7c3fb..4177459 100644
--- a/src/main/java/org/apache/maven/plugin/compiler/ToolExecutor.java
+++ b/src/main/java/org/apache/maven/plugin/compiler/ToolExecutor.java
@@ -323,9 +323,6 @@ public class ToolExecutor {
             }
             if (checkDepends && causeOfRebuild == null) {
                 List<String> fileExtensions = mojo.fileExtensions;
-                if (fileExtensions == null || fileExtensions.isEmpty()) {
-                    fileExtensions = List.of("class", "jar");
-                }
                 causeOfRebuild = 
incrementalBuild.dependencyChanges(dependencies.values(), fileExtensions);
             }
             if (checkOptions && causeOfRebuild == null) {

Reply via email to