Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
3.0-beta-1
-
None
-
Patch
Description
Hello,
On my main aggregator (~280 modules, lots of inter-modules dependencies), I noticed that since 3.0-beta-1, maven hangs after displaying the list of modules to build. The problem was not occurring with alpha-7.
After investigation, it seems that with the introduction of parallel build in beta-1, the whole list of module dependencies is computed at the beginning of the build (see http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ProjectSegment.java?r1=931884&r2=935334&diff_format=h)
It turns out that this calculation, done inside DefaultProjectDependencyGraph, is very unefficient : if a module is referenced n times, its dependencies will be computed n times. The attached patch solves the problem by computing the dependency tree for a given projectId only once.