I have a Maven pom that uses <packaging>war</packaging>. But actually, I don’t want build the war-file, I just want all the dependent jars collected and a full deployment directory created.
So I’m running the war:exploded goal to generate the deploy directory:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<configuration>
<webappDirectory>target/${env}/deploy</webappDirectory>
<archiveClasses>true</archiveClasses>
</configuration>
<goals>
<goal>exploded</goal>
</goals>
</execution>
</executions>
</plugin>
The trouble is, the war file still gets built. Is there a simple way of having <packaging>war</packaging> execute the war:exploded goal instead of the war:war goal?
Or is there another simple way to do this?
According builtin lifecycle bindings for war packaging in package phase war:war mojo is called.
You can call previous ‘prepare-package’ phase – all actions will be performed and after that call mojo war:exploded
The results will be the same as yours but no war created.