1 package org.apache.maven.plugins.invoker;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.apache.maven.plugin.MojoFailureException;
23 import org.apache.maven.plugins.annotations.LifecyclePhase;
24 import org.apache.maven.plugins.annotations.Mojo;
25 import org.apache.maven.plugins.annotations.Parameter;
26 import org.apache.maven.plugins.annotations.ResolutionScope;
27
28
29
30
31
32
33
34
35
36
37 @Mojo( name = "run", defaultPhase = LifecyclePhase.INTEGRATION_TEST, requiresDependencyResolution = ResolutionScope.TEST, threadSafe = true )
38
39 public class InvokerMojo
40 extends AbstractInvokerMojo
41 {
42
43
44
45
46
47
48
49 @Parameter( property = "maven.test.failure.ignore", defaultValue = "false" )
50 private boolean ignoreFailures;
51
52
53
54
55
56
57 @Parameter( property = "invoker.failIfNoProjects" )
58 private Boolean failIfNoProjects;
59
60
61
62
63
64
65 @Parameter( property = "invoker.streamLogsOnFailures", defaultValue = "false" )
66 private boolean streamLogsOnFailures;
67
68 void processResults( InvokerSession invokerSession )
69 throws MojoFailureException
70 {
71 if ( streamLogsOnFailures )
72 {
73 invokerSession.logFailedBuildLog( getLog(), ignoreFailures );
74 }
75
76 if ( !suppressSummaries )
77 {
78 invokerSession.logSummary( getLog(), ignoreFailures );
79 }
80
81 invokerSession.handleFailures( getLog(), ignoreFailures );
82 }
83
84 @Override
85 protected void doFailIfNoProjects()
86 throws MojoFailureException
87 {
88 if ( Boolean.TRUE.equals( failIfNoProjects ) )
89 {
90 throw new MojoFailureException( "No projects to invoke!" );
91 }
92 }
93
94 }