You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by gn...@apache.org on 2026/06/08 12:54:24 UTC

(maven) branch master updated: Fix #11973: Restore backward-compatible DefaultToolchain constructor

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

gnodet pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven.git


The following commit(s) were added to refs/heads/master by this push:
     new 2c11aeed48 Fix #11973: Restore backward-compatible DefaultToolchain constructor
2c11aeed48 is described below

commit 2c11aeed48926a35c74734af9aecab6b62069c88
Author: Guillaume Nodet <gn...@gmail.com>
AuthorDate: Mon Jun 8 12:54:13 2026 +0000

    Fix #11973: Restore backward-compatible DefaultToolchain constructor
    
    Add deprecated constructors accepting org.codehaus.plexus.logging.Logger
    to maintain binary compatibility with custom toolchain implementations
    compiled against Maven 3.x.
    
    Closes #12238
---
 .../apache/maven/toolchain/DefaultToolchain.java   | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/compat/maven-compat/src/main/java/org/apache/maven/toolchain/DefaultToolchain.java b/compat/maven-compat/src/main/java/org/apache/maven/toolchain/DefaultToolchain.java
index ef89cee08f..c970206022 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/toolchain/DefaultToolchain.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/toolchain/DefaultToolchain.java
@@ -26,6 +26,7 @@
 
 import org.apache.maven.toolchain.model.ToolchainModel;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * Default abstract toolchain implementation, to be used as base class for any toolchain implementation
@@ -68,6 +69,27 @@ protected DefaultToolchain(ToolchainModel model, String type, Logger logger) {
         this.type = type;
     }
 
+    /**
+     * @param model the model, must not be {@code null}
+     * @param logger the logger (ignored, an SLF4J logger is used instead)
+     * @deprecated Use {@link #DefaultToolchain(ToolchainModel, Logger)} with an SLF4J logger instead.
+     */
+    @Deprecated(since = "4.0.0")
+    protected DefaultToolchain(ToolchainModel model, org.codehaus.plexus.logging.Logger logger) {
+        this(model, LoggerFactory.getLogger(DefaultToolchain.class));
+    }
+
+    /**
+     * @param model the model, must not be {@code null}
+     * @param type the type
+     * @param logger the logger (ignored, an SLF4J logger is used instead)
+     * @deprecated Use {@link #DefaultToolchain(ToolchainModel, String, Logger)} with an SLF4J logger instead.
+     */
+    @Deprecated(since = "4.0.0")
+    protected DefaultToolchain(ToolchainModel model, String type, org.codehaus.plexus.logging.Logger logger) {
+        this(model, type, LoggerFactory.getLogger(DefaultToolchain.class));
+    }
+
     @Override
     public final String getType() {
         return type != null ? type : model.getType();