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 11:49:31 UTC
[maven] branch maven-3.9.x updated: [MNG-7457] Warn about deprecated plugin Mojo
This is an automated email from the ASF dual-hosted git repository.
sjaranowski pushed a commit to branch maven-3.9.x
in repository https://gitbox.apache.org/repos/asf/maven.git
The following commit(s) were added to refs/heads/maven-3.9.x by this push:
new dd0ddef8f [MNG-7457] Warn about deprecated plugin Mojo
dd0ddef8f is described below
commit dd0ddef8f6d4c998472dff91d2a2153959a6049f
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() );
}
}