Is there anything I can add to pom.xml that will copy the generated war file from the target directory to my webapps directory?
Youn can use http://cargo.codehaus.org/Deploying+to+a+running+container and configure it accordingly.
You could also have a look at the jetty plugin. Just type "mvn jetty:run-war" and jetty should run your war-file.
Edit: Jetty is a light weight servlet container suitable for development and testing. It's also lightning fast to start.
Not ideal, but if you have a really strange app server setup, you could always use an antrun task set to execute when the packaging is run
<build>
....
<plugins>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<configuration>
<tasks>
<!-- Ant copy tasks go here -->
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
Alternatively, you could have tomcat look in your target directory and deploy directly from there.
In your context.xml or server.xml's Context element:
<Context path="" docBase="/path/to/target/exploded">
...
</Context>
Then you can use the war:exploded goal to create your exploded war.
I used the Maven WAR Plugin: http://maven.apache.org/plugins/maven-war-plugin/usage.html