Migrating your project to Maven 2 – Part II
The last thing I did was running the test classes successfully. Now let’s put in all the reports. We currently have the following reports in our maven build are:
First lets start by running mvn site out of the box (one of my favorite test cases ;-)), this should create the default reports according to the maven documentation (http://maven.apache.org/plugins/maven-site-plugin/howto.html). Here we go: mvn site….
[INFO] Generate "Continuous Integration" report.
[ERROR] VM #displayTree: error : too few arguments to macro. Wanted 2 got 0
[ERROR] VM #menuItem: error : too few arguments to macro. Wanted 1 got 0
[INFO] Generate "Dependencies" report.
[ERROR] FATAL ERROR
Nope, not out of the box… It seems that maven site does not work, although it’s mentioned on the maven website that it should work without any adjustments.
I googled about and found the following suggested solutions: Using a snapshot version of the project-info-reports plugin as mentioned on the following link: http://www.nabble.com/-m2-Is-a-new-version-of-the-site-plugin-coming–t1095846.html, but that caused another error.
Maven said something about a default skin that did not exist. I also found a link that possibly would fix this, http://www.nabble.com/default-skin—where-do-i-get-it–t1180771.html, but that led me to the same NullPointer mentioned above.
I just wanted to conclude that site doesnot work yet in maven 2, but then I read this article on javaworld: http://www.javaworld.com/javaworld/jw-02-2006/jw-0227-maven.html were they managed to get it work. I tried the example attached to the article and that one did work indeed. The main difference between the two pom’s are the relative huge amount of dependencies that I have in my pom. That’s exactly the report is throwing the NullPointer according to the stacktrace. I will try to find out whats going on, and which depedency causes this NullPointer later. (But even if it is a broken dependency or whatsoever I would not expect the NullPointer…)
Let’s now focus on the individual reports that I want to use in Maven 2 and see if they are available yet
|Report Name||Does it work in Maven 2?|
|JUnit||OK, its called surefire now.|
|Clover||NOT OK, could not get it to work.|
I could not download any of the sandbox plugins, I followed the instructions on http://mojo.codehaus.org/using-sandbox-plugins.html, but no luck. Maven just could not download the plugins for some reason.
A lot of the reports we use now are still in sandboxes, so it’s not possible to migrate yet for us. Also I still need to investigate why maven site is throwing me the NullPointer before I can use the site generation. Untill this gets fixed or I get it working we are still stuck with maven 1.x.
(I used jdk 1.5.6_06 and maven 2.0.2 for this test)