This rule enforces that all plugins have a version defined, either in the plugin or pluginManagement section of the pom or a parent pom.
The following parameters are supported by this rule:
Sample Plugin Configuration (showing some defaults, defaults can be skipped):
<project> [...] <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <version>1.4.1</version> <executions> <execution> <id>enforce-plugin-versions</id> <goals> <goal>enforce</goal> </goals> <configuration> <rules> <requirePluginVersions> <message>Best Practice is to always define plugin versions!</message> <banLatest>true</banLatest> <banRelease>true</banRelease> <banSnapshots>true</banSnapshots> <phases>clean,deploy,site</phases> <additionalPlugins> <additionalPlugin>org.apache.maven.plugins:maven-eclipse-plugin</additionalPlugin> <additionalPlugin>org.apache.maven.plugins:maven-reactor-plugin</additionalPlugin> </additionalPlugins> <unCheckedPluginList>org.apache.maven.plugins:maven-enforcer-plugin,org.apache.maven.plugins:maven-idea-plugin</unCheckedPluginList> </requirePluginVersions> </rules> </configuration> </execution> </executions> </plugin> </plugins> </build> [...] </project>