Plugin Validation
Maven since versions 3.9.x and 4.x introduced Plugin Validation
in order to help Maven users and Maven Plugin developers maintain theirs projects.
Internal Plugins Validation issues
Internal Plugins Validation issues (project local) are issues discovered in Maven project configuration, like:
- using deprecated plugins goals
- using deprecated plugins parameters
- using read only plugins parameters
In such cases users can fix their project by fixing configuration by editing their POMs. Users should consult actual plugin documentation or try to update plugin to newer version.
External Plugins Validation issues
External Plugins Validation issues (non-configuration) are issues detected in plugin itself, like:
- using old, deprecated Maven Api by plugin
- declaring dependencies for Maven Core artifacts in wrong scope in plugin project
External Plugins issues can only be fix by plugin authors.
In such cases users can try to update plugin to newer version. If the newest version of plugin still has an issue users should report problem to plugin authors.
Manage Plugin Validation verbosity
In order to manage Plugin Validation verbosity a property maven.plugin.validation
can be used.
Allowed values are:
NONE
- mute Plugin Validation completely, nothing will be reportedINLINE
- report onlyInternal
issues in place where occurBRIEF
- report onlyInternal
issues in place where occur and list of plugins withExternal
issues at the and of buildSUMMARY
- report list of plugins withInternal
andExternal
issues at the end of buildVERBOSE
- reportInternal
andExternal
issues at the end of build in verbose mode
Configuration values for maven.plugin.validation
are case insensitive, can be used on command line, like:
mvn -Dmaven.plugin.validation=verbose ...
Can be added to MAVEN_OPTS
or MAVEN_ARGS
environment variables,
can also be added to .mvn/maven.config
file in order to configure per project.
Users can add such property to their settings.xml
file to change configuration globally.
NOTICE as maven.plugin.validation
is configuration item for Maven itself, it can not be used in project pom.xml
Please consult: