[ http://jira.codehaus.org/browse/MNG-2576?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=145786#action_145786 ]
Paul Benedict commented on MNG-2576: ------------------------------------ To be inline with the issue management that marks issues for branch/head as 2.0.x and 2.1.x, is this something that is also being slated for 3.0? If so, please add the version. > Make Like Reactor Mode > ---------------------- > > Key: MNG-2576 > URL: http://jira.codehaus.org/browse/MNG-2576 > Project: Maven 2 > Issue Type: New Feature > Components: Command Line, Reactor and workspace > Reporter: Kenney Westerhof > Assignee: Dan Fabulich > Fix For: 2.1.0 > > > Add a commandline option to enable maven to expand the reactor scope to find > projects that are dependencies > of the projects currently in the reactor, and add them. > Currently only the current project and child projects are included in the > reactor search. I'm proposing > to add a commandline switch that lets maven check parent directories to find > the root of the project tree, > and then do a normal reactor scan, only adding projects that would normally > not be added if they're needed > as dependencies of the projects that would normally be built. > Here's a sample project tree: > * root > ** p1 > *** c1 (depends on p2) > ** p2 (depends on c2) > ** p3 > *** c2 > And a sample algorithm: > - When building c1, the reactor would contain [c1]. > - Maven would check p1, then root, etc, using the <parent> tags (without the > versions!) > to see if the project is still in the current reactor. > - It would then create a second list of projects (reactor2) containing ALL > projects, using the newly discovered root: [root, p1, c2, p2]. > - remove all projects from reactor2 contained in reactor: reactor2 = [root, > p1, p2] > - resolve all direct dependencies for all projects in reactor in reactor2 and > add them to reactor, taking versions into account: reactor = [p2, c1] > - repeat previous step until all projects have their dependencies resolved > from reactor 2. first iteration would yield reactor = [c2, p2, c1], > next iteration would stop since c1 doesn't have any dependencies present in > reactor2. > This would ensure that when some local project's sources have changed, > they'll be incorporated > in the build, regardless of where you build. So you don't have to do a > reactor build each time you change more > than 1 project, and you don't have to remember which projects you changed and > build them in the correct order > yourself, manually. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira