1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.plugins.war;
20
21 import javax.inject.Inject;
22
23 import org.apache.maven.artifact.handler.manager.ArtifactHandlerManager;
24 import org.apache.maven.execution.MavenSession;
25 import org.apache.maven.plugin.MojoExecutionException;
26 import org.apache.maven.plugin.MojoFailureException;
27 import org.apache.maven.plugins.annotations.LifecyclePhase;
28 import org.apache.maven.plugins.annotations.Mojo;
29 import org.apache.maven.plugins.annotations.ResolutionScope;
30 import org.apache.maven.shared.filtering.MavenFileFilter;
31 import org.apache.maven.shared.filtering.MavenResourcesFiltering;
32 import org.codehaus.plexus.archiver.manager.ArchiverManager;
33
34
35
36
37 @Mojo(
38 name = "exploded",
39 defaultPhase = LifecyclePhase.PACKAGE,
40 threadSafe = true,
41 requiresDependencyResolution = ResolutionScope.RUNTIME)
42 public class WarExplodedMojo extends AbstractWarMojo {
43 @Inject
44 public WarExplodedMojo(
45 ArtifactHandlerManager artifactHandlerManager,
46 ArchiverManager archiverManager,
47 MavenFileFilter mavenFileFilter,
48 MavenResourcesFiltering mavenResourcesFiltering,
49 MavenSession session) {
50 super(artifactHandlerManager, archiverManager, mavenFileFilter, mavenResourcesFiltering, session);
51 }
52
53 @Override
54 public void execute() throws MojoExecutionException, MojoFailureException {
55 getLog().info("Exploding webapp");
56
57 buildExplodedWebapp(getWebappDirectory());
58 }
59 }