This is an automated email from the ASF dual-hosted git repository.

gnodet pushed a commit to branch maven-3.8.x
in repository https://gitbox.apache.org/repos/asf/maven.git


The following commit(s) were added to refs/heads/maven-3.8.x by this push:
     new 980b82edd [3.8.x] [MNG-7672] Fork should only execute the project and 
its submodules (#970)
980b82edd is described below

commit 980b82edd9475ab6d826196d43de1d0b9b7241f6
Author: Guillaume Nodet <[email protected]>
AuthorDate: Mon Jan 30 15:10:19 2023 +0100

    [3.8.x] [MNG-7672] Fork should only execute the project and its submodules 
(#970)
---
 .../lifecycle/internal/LifecycleDependencyResolver.java   | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git 
a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
 
b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
index e755aa904..e0bf6414e 100644
--- 
a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
+++ 
b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
@@ -21,6 +21,7 @@ package org.apache.maven.lifecycle.internal;
 
 import java.io.File;
 
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.HashMap;
@@ -96,7 +97,9 @@ public class LifecycleDependencyResolver
     {
         if ( aggregator )
         {
-            return session.getProjects();
+            List<MavenProject> projects = new ArrayList<>();
+            addProjectAndSubModules( projects, project );
+            return projects;
         }
         else
         {
@@ -104,6 +107,16 @@ public class LifecycleDependencyResolver
         }
     }
 
+    private static void addProjectAndSubModules( List<MavenProject> projects, 
MavenProject project )
+    {
+        projects.add( project );
+        for ( MavenProject submodule : project.getCollectedProjects() )
+        {
+            addProjectAndSubModules( projects, submodule );
+        }
+    }
+
+
     public void resolveProjectDependencies( MavenProject project, 
Collection<String> scopesToCollect,
                                             Collection<String> 
scopesToResolve, MavenSession session,
                                             boolean aggregating, Set<Artifact> 
projectArtifacts )

Reply via email to