Maven users rebel against MyEclipse

September 5, 2008 By Brian Fox Comments Off

Sometimes Maven takes heat for being “opinionated” and wanting you to do things a certain way. Even though it is usually configurable, it’s normally easier to go with the flow.

It seems that the “Maven Way” is catching on, as masses of Maven users rebel against MyEclipse’s attempt at using M2Eclipse as the basis for their Maven integration. In the beginning it sounded like a good thing, using the best plugin as a base to provide integration to more users. The trouble is that this implementation changed some core functionality and only supports new projects. Worse is that existing M2e users get tripped up by the incompatibility with the Maven4Eclipse implementation.

A key tenet of Maven is that all Maven based projects behave the same regardless of where they are. Once you know Maven, you should be able to work with any Maven project in seconds. It seems that MyEclipse broke this tenet and the users aren’t too happy about it.

A more appropriate approach would be to work with M2e to add features instead of effectively forking it.

You can read more about it on Jason’s blog.

Categories: Maven

The Maven version shuffle

By Brian Fox Comments Off

The Maven project is again pretty active with lots of efforts underway to improve artifact resolution, inheritance and interpolation. The changes have led to a reshuffling of the Maven versions.

For a long time, the next big version was going to be 2.1. The trouble is that we were left with maintaining 2.0.x and adding features and possible incompatibilities in what should be a bug fix only branch.

The decision was made to move the trunk from 2.1 to 3.0 since it has a significant amount of improvements across the board.

In the meantime, we were working on 2.0.10, and to fix some regressions required fairly significant rework to core functionality. So much rework that we started to wonder if 2.0.x was the appropriate place for such significant changes. Since the trunk was moved up to 3.0, this gave us a bit more leeway in the 2.x line. So… the intended 2.0.10 release was renamed to 2.1.0-M1 and 2 additional Milestone releases defined.

The pure bug fixes that were intended for 2.0.10 will be ported back from the now 2.1.0-M1 release and released as 2.0.10. After that, the 2.0.x line will most likely start to close down to only critical bug fixes.

Confused yet?

One more time: 2.1 became 3.0 2.0.10 became 2.1.0-M1 2.0.10 will be created by backporting bugs from 2.1.0-M1

Read these threads to get up to speed: Maven 2.1.0 GA Plan [vote] Version for pending release [PROPOSAL] Going forward with Maven 2.x releases

Some good news: a 3.0 alpha-1 release should be occurring very soon. It will be without the artifact resolution changes AKA Mercury, but will have the new interpolation and inheritance code. This release will be intended to start identifying incompatibilities between 2.x and 3.0 so they can be handled and to give us a platform to start stabilizing.

Categories: Maven