This is probably just a continuation of the recent discussions about workspace 
resolution vs. non-workspace resolution, but perhaps it's slightly different.  
This may also be a pure Maven question, but it probably has aspects that are 
exclusive to the IDE environment.

I work in an environment where our big application (currently built with Ant) 
is composed of multiple projects.  We often have at least two release trains in 
process, where some of the work on particular component projects is done on 
different branches.  The build for each release specifies what branch is 
required for each project (quite often the trunk for most projects).

I'm trying to envision all the obstacles we'll have if/when we convert this 
large build to Maven.

It's entirely likely that some people will have to work on multiple releases at 
the same time, even working on the same project on different branches.

Each project will have a unique coordinate, and when built will be installed in 
the user's local repository.  However, I obviously have to figure out how to 
deal with the fact that the same project could be built on different branches, 
resulting in actually different artifacts, but with essentially the same Maven 
coordinate.

So what are reasonable strategies for dealing with this?

I suppose one possibility is to somehow define a version range for each 
release.  That probably works while the development of the release is in 
process, but I'm not sure what we would do when the release is completed and we 
merge our release changes back to the trunk.

I suppose this is another argument for the "branch for release" strategy, which 
is defined by convention (even though the name doesn't sound like this) to mean 
that most work goes directly to the trunk, and branches are only created for 
the release candidate.
_______________________________________________
m2e-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/m2e-users

Reply via email to