Class BuildPlanExecutor
java.lang.Object
org.apache.maven.lifecycle.internal.concurrent.BuildPlanExecutor
Builds the full lifecycle in weave-mode (phase by phase as opposed to project-by-project).
This builder uses a number of threads equal to the minimum of the degree of concurrency (which is the thread count
set with -T
on the command-line) and the number of projects to build. As such, building a single project
will always result in a sequential build, regardless of the thread count.
- Since:
- 3.0 Builds one or more lifecycles for a full module NOTE: This class is not part of any public api and can be changed or deleted without prior notice.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) class
protected static class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final BuildPlanLogger
private final ConsumerPomArtifactTransformer
private final ExecutionEventCatapult
private static final Object
private final LifecycleRegistry
private final org.slf4j.Logger
private final MavenPluginManager
private final MojoDescriptorCreator
private final Map
<String, MojoExecutionConfigurator> private final MojoExecutor
private final ProjectExecutionListener
-
Constructor Summary
ConstructorsConstructorDescriptionBuildPlanExecutor
(MojoExecutor mojoExecutor, ExecutionEventCatapult eventCatapult, List<ProjectExecutionListener> listeners, ConsumerPomArtifactTransformer consumerPomArtifactTransformer, BuildPlanLogger buildPlanLogger, Map<String, MojoExecutionConfigurator> mojoExecutionConfigurators, MavenPluginManager mavenPluginManager, MojoDescriptorCreator mojoDescriptorCreator, LifecycleRegistry lifecycles) -
Method Summary
Modifier and TypeMethodDescriptionstatic void
attachToThread
(MavenProject currentProject) void
execute
(MavenSession session, ReactorContext reactorContext, List<TaskSegment> taskSegments) private void
finalizeMojoConfiguration
(MojoExecution mojoExecution) Post-processes the effective configuration for the specified mojo execution.private static String
private static String
gav
(MavenProject p) private XmlNode
getMojoConfiguration
(MojoDescriptor mojoDescriptor) private MojoExecutionConfigurator
mojoExecutionConfigurator
(MojoExecution mojoExecution) private void
resolvePlugin
(MavenSession session, List<org.eclipse.aether.repository.RemoteRepository> repositories, Plugin plugin)
-
Field Details
-
GLOBAL
-
logger
private final org.slf4j.Logger logger -
mojoExecutor
-
eventCatapult
-
projectExecutionListener
-
consumerPomArtifactTransformer
-
buildPlanLogger
-
mojoExecutionConfigurators
-
mavenPluginManager
-
mojoDescriptorCreator
-
lifecycles
-
-
Constructor Details
-
BuildPlanExecutor
@Inject public BuildPlanExecutor(@Named("concurrent") MojoExecutor mojoExecutor, ExecutionEventCatapult eventCatapult, List<ProjectExecutionListener> listeners, ConsumerPomArtifactTransformer consumerPomArtifactTransformer, BuildPlanLogger buildPlanLogger, Map<String, MojoExecutionConfigurator> mojoExecutionConfigurators, MavenPluginManager mavenPluginManager, MojoDescriptorCreator mojoDescriptorCreator, LifecycleRegistry lifecycles)
-
-
Method Details
-
execute
public void execute(MavenSession session, ReactorContext reactorContext, List<TaskSegment> taskSegments) throws ExecutionException, InterruptedException -
resolvePlugin
private void resolvePlugin(MavenSession session, List<org.eclipse.aether.repository.RemoteRepository> repositories, Plugin plugin) -
gav
-
gav
-
finalizeMojoConfiguration
Post-processes the effective configuration for the specified mojo execution. This step discards all parameters from the configuration that are not applicable to the mojo and injects the default values for any missing parameters.- Parameters:
mojoExecution
- The mojo execution whose configuration should be finalized, must not benull
.
-
getMojoConfiguration
-
mojoExecutionConfigurator
-
attachToThread
-