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) classprotected static class -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final BuildPlanLoggerprivate final ConsumerPomArtifactTransformerprivate final ExecutionEventCatapultprivate static final Objectprivate final LifecycleRegistryprivate final org.slf4j.Loggerprivate final MavenPluginManagerprivate final MojoDescriptorCreatorprivate final Map<String, MojoExecutionConfigurator> private final MojoExecutorprivate 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 voidattachToThread(MavenProject currentProject) voidexecute(MavenSession session, ReactorContext reactorContext, List<TaskSegment> taskSegments) private voidfinalizeMojoConfiguration(MojoExecution mojoExecution) Post-processes the effective configuration for the specified mojo execution.private static Stringprivate static Stringgav(MavenProject p) private XmlNodegetMojoConfiguration(MojoDescriptor mojoDescriptor) private MojoExecutionConfiguratormojoExecutionConfigurator(MojoExecution mojoExecution) private voidresolvePlugin(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
-