1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.project;
20
21 import java.util.Collections;
22 import java.util.LinkedHashSet;
23 import java.util.List;
24 import java.util.Set;
25
26 import org.apache.maven.execution.MavenSession;
27 import org.apache.maven.lifecycle.DefaultLifecycles;
28 import org.apache.maven.lifecycle.LifecycleExecutor;
29 import org.apache.maven.lifecycle.MavenExecutionPlan;
30 import org.apache.maven.model.Plugin;
31 import org.apache.maven.model.PluginExecution;
32 import org.apache.maven.plugin.MojoExecution;
33
34
35
36
37
38
39
40 public class EmptyLifecycleExecutor implements LifecycleExecutor {
41
42 public MavenExecutionPlan calculateExecutionPlan(MavenSession session, String... tasks) {
43 return new MavenExecutionPlan(null, new DefaultLifecycles());
44 }
45
46 public MavenExecutionPlan calculateExecutionPlan(MavenSession session, boolean setup, String... tasks) {
47 return new MavenExecutionPlan(null, new DefaultLifecycles());
48 }
49
50 public void execute(MavenSession session) {}
51
52 public Set<Plugin> getPluginsBoundByDefaultToAllLifecycles(String packaging) {
53 Set<Plugin> plugins;
54
55
56 if ("JAR".equals(packaging)) {
57 plugins = new LinkedHashSet<>();
58
59 plugins.add(newPlugin("maven-compiler-plugin", "compile", "testCompile"));
60 plugins.add(newPlugin("maven-resources-plugin", "resources", "testResources"));
61 plugins.add(newPlugin("maven-surefire-plugin", "test"));
62 plugins.add(newPlugin("maven-jar-plugin", "jar"));
63 plugins.add(newPlugin("maven-install-plugin", "install"));
64 plugins.add(newPlugin("maven-deploy-plugin", "deploy"));
65 } else {
66 plugins = Collections.emptySet();
67 }
68
69 return plugins;
70 }
71
72 private Plugin newPlugin(String artifactId, String... goals) {
73 Plugin plugin = new Plugin();
74
75 plugin.setGroupId("org.apache.maven.plugins");
76 plugin.setArtifactId(artifactId);
77
78 for (String goal : goals) {
79 PluginExecution pluginExecution = new PluginExecution();
80 pluginExecution.setId("default-" + goal);
81 pluginExecution.addGoal(goal);
82 plugin.addExecution(pluginExecution);
83 }
84
85 return plugin;
86 }
87
88 public void calculateForkedExecutions(MojoExecution mojoExecution, MavenSession session) {}
89
90 public List<MavenProject> executeForkedExecutions(MojoExecution mojoExecution, MavenSession session) {
91 return Collections.emptyList();
92 }
93 }