Which is the best Maven Eclipse plugin?
JavaEclipseMaven 2Eclipse PluginJava Problem Overview
There is two available Eclipse plugins for Maven :
- Eclipse IAM (old name is Q4E)
- m2eclipse
m2eclipse seems to be the oldest but the more robust. Is there any key differences between the two ?
Which one should be chosen for a project starting today and why ?
UPDATE: m2eclipse is moving to eclipse.org and will be included in the Indigo release train (Eclipse 3.7). See m2e at Eclipse: What will this mean for you? and m2eclipse is moving to eclipse.org!. The accepted answer is thus even more correct.
Java Solutions
Solution 1 - Java
I choose m2eclipse since it is stable and have all that I need. Especially ability to resolve dependencies inside workspace.
I tried the other one some time ago and didn't like it. It was to buggy so I gave up quickly.
Solution 2 - Java
The side by side comparison is moved to http://web.archive.org/web/20150526230611/http://docs.codehaus.org/display/MAVENUSER/Eclipse+Integration
Solution 3 - Java
For me as a complete Maven-newbie the m2eclipse plugin worked quite well. We manage around 15 projects with it. The nested Maven projects will be flat in Eclipse (as it does not support nested projects), but all of them were automatically set up the right way, so everything works fine. Up to now I never needed to manually invoke a Maven command, for me using the preconfigured "run as" launch configurations did their job quite well.
For me the quality of m2eclipse can be judged by this simple example: If you run Eclipse on a JRE instead of JDK, m2eclipse shows a warning that some of its features rely on a JDK. Nevertheless it still works on the JRE. And the warning dialog has hyperlinks to the Eclipse documentation about command line arguments and to the "Installed JREs" preferences, so you can easily fix the wrong Java VM.
That said I cannot speak for or against IAM, as I never used it due to the good m2eclipse experience.
Solution 4 - Java
Side by side comparison of Maven plugins for Eclipse. It haven't been updated to recently added features. For example, see New and Noteworthy page for m2eclipse.
Solution 5 - Java
m2eclipse is ok (a lot more reliable than it was 1-2 years ago), but m2eclipse extras (which you need for WTP integration - WTP gives you the ability to run a server in the IDE) is a different matter - and not supported by Codehaus. Several times a week you will find that it hasn't copied resources to the appserver, or you get a NPE, or some other problem.
I have not used Eclipse IAM but I discovered this page whilst looking for alternatives to m2e because of these WTP issues. Intellij is calling, I think.
Solution 6 - Java
m2eclipse is fine for the small projects. But it has a very poor performance in huge enterprise projects. Even a smallest change in POMs would cause this plugin to "update dependencies" for hours...
Since we switched to IAM, the problem's almost gone. Even if it takes a while for it to cope with the POM changes, it is still like minutes compared to hours (m2e).
Choose:
- m2e - if your project is small and you like fancy features like dependency trees
- iam - if you need performance
Solution 7 - Java
I used m2eclipse. But I did never manage to launch the tests or the whole project from within eclipse (the project had nested folders for various sub-modules). When I used it they said support for that was experimental. The most I could get was syntax-checking and such. For the rest I used the console.
Did not like the experience at all.
Solution 8 - Java
what about multi modules project ?, m2eclipse plugin is ineffective. Especially if we use war module.
Solution 9 - Java
I am using m2eclipse ... thats the best and well documented too...