2011-10-19 9 views
24

Solo quiero entender, porque obtuve el código de otra pregunta, y está funcionando bien, pero no entiendo el flujo de esta operación.mvn tomcat7: ejecutar - ¿Cómo funciona?

Este es mi entendimiento de Apache Maven Tomcat plug-in para Tomcat 7, cuando se utiliza mvn tomcat7: correr con configuración siguiente:

<plugin> 
    <groupId>org.apache.tomcat.maven</groupId> 
    <artifactId>tomcat7-maven-plugin</artifactId> 
    <version>2.0-SNAPSHOT</version> 
    <configuration> 
     <path>/${project.build.finalName}</path> 
    </configuration> 
</plugin> 

Se crea una nueva instancia de Tomcat 7 con la configuración por defecto, a continuación, utilizar archivo de la guerra del proyecto como un proyecto implementado en este caso, estoy en lo correcto, corríjanme si me equivoco, o alguien me describa cómo funciona este proceso, gracias de antemano.

Respuesta

27

pom.xml del tomcat7-maven-plugin depende de los paquetes de Tomcat. Maven los descarga y el complemento inicia una instancia incorporada de Tomcat con el proyecto web.

mvn -X tomcat7:run imprime la configuración. Algunas partes interesantes:

[INFO] Preparing tomcat7:run 
[DEBUG] (s) resources = [Resource {targetPath: null, filtering: false, 
    FileSet {directory: /workspace/webtest1/src/main/resources, 
    PatternSet [includes: {}, excludes: {}]}}] 
... 
[DEBUG] (f) additionalConfigFilesDir = /workspace/webtest1/src/main/tomcatconf 
[DEBUG] (f) configurationDir = /workspace/webtest1/target/tomcat 
... 
[DEBUG] (f) path = /webtest1 
... 
[DEBUG] (f) port = 8080 
[DEBUG] (f) project = ...:webtest1:0.0.1-SNAPSHOT @ /workspace/webtest1/pom.xml 
... 
[DEBUG] (f) warSourceDirectory = /workspace/webtest1/src/main/webapp 
... 
[INFO] Creating Tomcat server configuration at /workspace/webtest1/target/tomcat 
... 
[DEBUG] adding classPathElementFile file:/workspace/webtest1/target/classes/ 
[DEBUG] add dependency to webapploader org.slf4j:slf4j-api:1.5.6:compile 
... 

warSourceDirectory puntos a src (no target), por lo que se ejecuta como un proyecto web dinámica habitual, que podrían cambiar las JSP, HTMLs y será visible inmediatamente. Por eso, la carpeta target/tomcat/webapps está vacía.

El sitio de v1.2 contiene una documentación más detallada que el sitio de 2.0-SNAPSHOT sobre la configuración: http://mojo.codehaus.org/tomcat-maven-plugin/plugin-info.html.

+0

Traté de cambiar el contenido estático de HTML y CSS en el directorio warSourceDirectory predeterminado, pero los cambios no se reflejan sin reiniciar el servidor. ¿Qué debo hacer para evitar el reinicio del servidor para cambios de contenido estático? – prabu

Cuestiones relacionadas