Upgrading Maven Plugins
In preparation for a later switch to Maven 3 (which is already knocking on the door) as well as to get rid of some plugin related issues we are suffering from, I decided to update the Maven plugins we use for build and site generation.
Of course, we are following best practice and are locking down the version of all plugins in project.build.pluginManagment.plugins section. This is done in the company's topmost POM, so that all company projects would use the same versions once they reference the latest parent POM.
As you might know, upgrading to new plugin versions is always an adventure and you have to test your builds seriously, which is of course hard when you are going to change the company settings...
Well, here is the list of build plugins we now use with their current version, as well as (in brackets) the version that Maven 3.0-alpha5 defines in its internal POM. I have highlighted where both versions differ:
maven-archetype-plugin: 2.0-alpha-5(see comment below)
- maven-assembly-plugin: 2.2-beta-4 (2.2-beta-4)
- maven-clean-plugin: 2.3 (2.3)
- maven-compiler-plugin: 2.0.2 (2.0.2)
- maven-dependency-plugin: 2.1 (2.0)
- maven-deploy-plugin: 2.4 (2.4)
- maven-ear-plugin: 2.4 (2.3.1)
- maven-ejb-plugin: 2.2 (2.1)
- maven-enforcer-plugin: 1.0-beta-1
- maven-help-plugin: 2.1 (2.1)
- maven-install-plugin: 2.3 (2.3)
- maven-javadoc-plugin: 2.6.1 (2.5)
- maven-jar-plugin: 2.3 (2.2)
- maven-release-plugin: 2.0-beta-9 (2.0-beta-9)
- maven-resources-plugin: 2.4.1 (2.4.1)
- maven-site-plugin: 2.0.1 (2.0.1)
- maven-source-plugin: 2.1.1 (2.0.4)
- maven-surefire-plugin: 2.4.3 (2.4.3)
- maven-war-plugin: 2.1-beta-1 (2.1-alpha-1)
- build-helper-maven-plugin: 1.4
- failsafe-maven-plugin: 2.4.3-alpha-1
- cargo-maven2-plugin: 1.0
- docbkx-maven-plugin: 2.0.8
It's a bit strange that Maven 3.0-alpha5 (which came out end of November) does not use the latest version of all those plugins, most of them having been released before that date. I don't know if this was intentional or not... Let's hope it's not because of unsure quality of latest plugin versions ;-) Anyways, I decided to upgrade to the latest available version for all plugins.
Here's the list for plugins related to site reports:
- cobertura-maven-plugin: 2.3
- findbugs-maven-plugin: 2.3
- jdepend-maven-plugin: 2.0-beta-2
- maven-checkstyle-plugin: 2.4
- maven-jxr-plugin: 2.1
- maven-pmd-plugin: 2.4
- maven-project-info-reports-plugin: 2.1.2
- maven-surefire-report-plugin: 2.4.3
- taglist-maven-plugin: 2.4
I'm going to show some tips and issues when upgrading to these versions in an upcoming post...