The table below indicates which plugins are affected by the API changes in Maven 3.x and might not function properly. Please note that the table is not complete, e.g. not all versions of a particular plugin were tested but usually only the latest release version. Also, these results were derived from the integration tests of the plugins, features of the plugin that are not covered by tests are of unknown status.

Note: The tables below focus on build plugins. For the status of reporting plugins, please see the compatibility notes about Maven 3.x and site plugin.

Symbol Legend:
(tick) No known incompatibilities
(warning) Some incompatibilities
(error) Incompatible
(question) Not tested

Plugins Maintained by the Apache Maven Community

Plugin

Version

Status

Comments

Maven Ant Plugin

2.2

(tick)

 

Maven AntRun Plugin

1.3

(warning)

Due to problems with class loader isolation, the Maven Ant Tasks cannot be run by the Maven AntRun Plugin with Maven 3.0. See MANTRUN-123 for details.

Maven Assembly Plugin

2.2-beta-5

(tick)

In plugin versions before 2.2-beta-5, goal invocations that employ the archiverConfig parameter or the <containerDescriptorHandler>/<configuration> element in an assembly descriptor will fail due to a linkage error (MASSEMBLY-456). Also, goal invocations that use <descriptor> to load an assembly descriptor from the class path will fail to locate this descriptor (MASSEMBLY-452).

Maven Checkstyle Plugin

2.5

(tick)

Earlier plugin versions will fail with a linkage error (see MCHECKSTYLE-123).

Maven Clean Plugin

2.3

(tick)

 

Maven Compiler Plugin

2.0.2

(tick)

 

Maven Dependency Plugin

2.0

(tick)

 

Maven Deploy Plugin

2.5

(tick)

Plugin versions before 2.5 have dependencies on specific Wagon implementations which will take precedence over the wagons bundled with Maven 3. In particular, plugin version 2.3 uses very old wagons which for instance can't deploy via HTTP as commonly used with repository managers. Furthermore, the implementation to support altDeploymentRepository is broken in old plugin versions.

Maven DOAP Plugin

1.0

(tick)

 

Maven Documentation Checker Plugin

1.0

(tick)

 

Maven EAR Plugin

2.3.2

(tick)

 

Maven Eclipse Plugin

2.8

(tick)

 

Maven EJB Plugin

2.2.1

(tick)

Plugin versions before 2.2 are not able to add the Class-Path entry to the manifest (MEJB-46).

Maven Enforcer Plugin

1.0-beta-1

(tick)

 

Maven GPG Plugin

1.0

(tick)

 

Maven Help Plugin

2.1.1

(tick)

Previous versions of the plugin bypass interface abstractions to access internal implementation classes which have changed in Maven 3. This makes those version prone to linkage errors.

Maven Install Plugin

2.3

(tick)

 

Maven Invoker Plugin

1.3

(tick)

 

Maven JAR Plugin

2.2

(tick)

 

Maven Jarsigner Plugin

1.1

(tick)

 

Maven One Plugin

1.2

(error)

No longer supported.

Maven Patch Plugin

1.1

(tick)

 

Maven Plugin Plugin

2.5.1

(tick)

Due to problems with absolute paths, plugin versions before 2.5 will not detect script-based mojos (MPLUGIN-136).

Maven RAR Plugin

2.2

(tick)

 

Maven Reactor Plugin

1.0

(error)

The plugin uses command line parameters that are no longer supported by Maven 3. The make-like reactor mode offered by the plugin is however natively supported by Maven 3.

Maven Release Plugin

2.0-beta-9

(tick)

 

Maven Remote Resources Plugin

1.0

(tick)

 

Maven Repository Plugin

2.2

(tick)

 

Maven Resources Plugin

2.4

(tick)

 

Maven Shade Plugin

1.3

(tick)

Due to a subtle bug in plugin versions before 1.2.2, the creation of dependency reduced POMs can fail when running with Maven 3 (MSHADE-66).

Maven Site Plugin

3.0

(tick)

Configuration has changed significantly - see

http://maven.apache.org/plugins/maven-site-plugin/maven-3.html

Maven Source Plugin

2.1

(tick)

 

Maven Surefire Plugin

2.4.3

(tick)

 

Maven Verifier Plugin

1.0-beta-1

(tick)

 

Maven WAR Plugin

2.1-beta-1

(tick)

 

Plexus Maven Plugin

1.3.4

(warning)

Plugin versions before 1.3.5 produce bad component descriptors that miss list-/map-typed component requirements in combination with Maven 3.x. Note: The latest releases of this plugin employ a new artifact id, namely plexus-component-metadata.

Plugins Maintained by the Mojo Community

Plugin

Version

Status

Comments

ANTLR-3 Maven Plugin

1.0

(tick)

 

Application Assembler Maven Plugin

1.0

(tick)

 

APT Maven Plugin

1.0-alpha-3

(tick)

Plugin versions before 1.0-alpha-3 employ a hack for embedded invocation of APT which no longer works with the class loader hierarchy in Maven 3 (MOJO-1458). Users that can't update to a newer version of the plugin can use the configuration <fork>true</fork> to workaround the issue.

Axis Tools Maven Plugin

1.3

(tick)

 

Build Number Maven Plugin

1.0-beta-3

(tick)

 

Failsafe Maven Plugin

2.4.3-alpha-1

(tick)

 

Findbugs Maven Plugin

2.3

(tick)

Plugin versions before 2.3 are coded against implementation classes rather than interfaces but the underlying implementation of the API has changed in Maven 3 which causes linkage errors (MFINDBUGS-100).

GWT Maven Plugin

1.2

(tick)

Plugin versions before 1.2 use internal types that are no longer present to locate sources for projects in a reactor build.

Hibernate3 Maven Plugin

2.2

(tick)

 

JavaCC Maven Plugin

2.5

(tick)

 

JavaNCSS Maven Plugin

2.0

(tick)

 

JBoss Packaging Maven Plugin

2.1

(tick)

 

JSPC Maven Plugin

2.0-alpha-3

(tick)

 

Netbeans Module Maven Plugin

3.3

(tick)

Plugin versions before 3.3 rely on a class loader bug from Maven 2 to locate resources. The fix for this bug in Maven 3 makes these plugin versions fail to load resources (MNBMODULE-79).

OpenJPA Maven Plugin

1.0

(tick)

 

Selenium Maven Plugin

1.1

(tick)

 

Tomcat Maven Plugin

1.0-beta-1

(tick)

 

Versions Maven Plugin

1.2

(tick)

In versions before 1.2, the display-plugin-updates goals tries to access private fields which no longer exists and eventually fails with a NullPointerException (MVERSIONS-105).

XDoclet Maven Plugin

1.0

(tick)

 

Sonar Maven Plugin

2.0-beta-2

(tick)

 

Plugins Maintained by Third Parties

Plugin

Version

Status

Comments

Clover Maven Plugin

3.0.2

(warning)

The plugin uses a buggy version of plexus-resources to load resources like the report descriptor which fails in combination with Maven 3 and its revised class loading. Until the plugin itself gets fixed, users can simply add the fixed dependency org.codehaus.plexus:plexus-resources:1.0-alpha-7 to the <dependencies> of the <plugin> declaration.

GMaven Plugin

1.3

(tick)

Previous plugin versions depend on an old GMaven runtime which is not compatible with the updated IoC container in Maven 3.

jDocBook Maven Plugin

2.1.1

(warning)

This plugin relies on a class loader bug from Maven 2 to locate resources from the classpath.

YUI Compressor Maven Plugin

0.7.1

(warning)

The plugin has an undeclared dependency which causes it to fail due a linkage error. Until the plugin itself gets fixed, users can simply add the missing dependency org.codehaus.plexus:plexus-utils:1.1 to the <dependencies> of the <plugin> declaration.

Tobago Maven APT Plugin

1.0.23

(warning)

In order to load com.sun.tools.apt.Main for embedded invocation of APT, the plugin employs a hack which no longer works with the class loader hierarchy in Maven 3 (TOBAGO-256). The plugin has been superseded by the apt-maven-plugin from Mojo and is no longer maintained but users that are bound to it can use the configuration <fork>true</fork> to workaround the issue.

  • No labels

1 Comment

  1. Think the compatibility matrix needs updating as the Selenium plugin was updated in release 1.1 o support Maven 3 and GMaven 1.3 http://jira.codehaus.org/browse/MSELENIUM/fixforversion/16242