You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by sj...@apache.org on 2022/04/24 08:08:07 UTC

[maven] branch MNG-7457 created (now 3aec9e53f)

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

sjaranowski pushed a change to branch MNG-7457
in repository https://gitbox.apache.org/repos/asf/maven.git


      at 3aec9e53f [MNG-7457] Warn about deprecated plugin Mojo

This branch includes the following new commits:

     new 3aec9e53f [MNG-7457] Warn about deprecated plugin Mojo

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[maven] 01/01: [MNG-7457] Warn about deprecated plugin Mojo

Posted by sj...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

sjaranowski pushed a commit to branch MNG-7457
in repository https://gitbox.apache.org/repos/asf/maven.git

commit 3aec9e53f0f35075af3ff3bfc1714a6743493b90
Author: Slawomir Jaranowski <s....@gmail.com>
AuthorDate: Sat Apr 23 21:55:29 2022 +0200

    [MNG-7457] Warn about deprecated plugin Mojo
    
    (cherry picked from commit 702f52d0ea7c5e90b495bc05f079ca3e952766a8)
---
 .../plugin/internal/DeprecatedPluginValidator.java | 48 ++++++++++++++++------
 1 file changed, 35 insertions(+), 13 deletions(-)

diff --git a/maven-core/src/main/java/org/apache/maven/plugin/internal/DeprecatedPluginValidator.java b/maven-core/src/main/java/org/apache/maven/plugin/internal/DeprecatedPluginValidator.java
index 48e16c60c..4c21f80e3 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/internal/DeprecatedPluginValidator.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/internal/DeprecatedPluginValidator.java
@@ -21,6 +21,7 @@ package org.apache.maven.plugin.internal;
 
 import org.apache.maven.plugin.descriptor.MojoDescriptor;
 import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.shared.utils.logging.MessageBuilder;
 import org.apache.maven.shared.utils.logging.MessageUtils;
 import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException;
@@ -30,7 +31,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * Print warnings if deprecated params of plugin are used in configuration.
+ * Print warnings if deprecated mojo or parameters of plugin are used in configuration.
  *
  * @author Slawomir Jaranowski
  */
@@ -50,6 +51,11 @@ class DeprecatedPluginValidator implements MavenPluginConfigurationValidator
             return;
         }
 
+        if ( mojoDescriptor.getDeprecated() != null )
+        {
+            logDeprecatedMojo( mojoDescriptor );
+        }
+
         if ( mojoDescriptor.getParameters() == null )
         {
             return;
@@ -69,7 +75,7 @@ class DeprecatedPluginValidator implements MavenPluginConfigurationValidator
 
         if ( isValueSet( config, expressionEvaluator ) )
         {
-            logDeprecateWarn( parameter );
+            logDeprecatedParameter( parameter );
         }
     }
 
@@ -110,22 +116,38 @@ class DeprecatedPluginValidator implements MavenPluginConfigurationValidator
         return false;
     }
 
-    private static void logDeprecateWarn( Parameter parameter )
+    private void logDeprecatedMojo( MojoDescriptor mojoDescriptor )
+    {
+        String message = MessageUtils.buffer()
+            .warning( "Goal '" )
+            .warning( mojoDescriptor.getGoal() )
+            .warning( "' is deprecated: " )
+            .warning( mojoDescriptor.getDeprecated() )
+            .toString();
+
+        LOGGER.warn( message );
+    }
+
+    private static void logDeprecatedParameter( Parameter parameter )
     {
-        StringBuilder sb = new StringBuilder();
-        sb.append( "Parameter '" );
-        sb.append( parameter.getName() );
-        sb.append( '\'' );
+        MessageBuilder messageBuilder = MessageUtils.buffer()
+            .warning( "Parameter '" )
+            .warning( parameter.getName() )
+            .warning( '\'' );
+
         if ( parameter.getExpression() != null )
         {
             String userProperty = parameter.getExpression().replace( "${", "'" ).replace( '}', '\'' );
-            sb.append( " (user property " );
-            sb.append( userProperty );
-            sb.append( ")" );
+            messageBuilder
+                .warning( " (user property " )
+                .warning( userProperty )
+                .warning( ")" );
         }
-        sb.append( " is deprecated: " );
-        sb.append( parameter.getDeprecated() );
 
-        LOGGER.warn( MessageUtils.buffer().warning( sb.toString() ).toString() );
+        messageBuilder
+            .warning( " is deprecated: " )
+            .warning( parameter.getDeprecated() );
+
+        LOGGER.warn( messageBuilder.toString() );
     }
 }