2008-09-27 21 views

Respuesta

11

Copie el archivo war en el directorio $ TOMCAT_HOME/webapps /. Tomcat desplegará el archivo de guerra explotando automáticamente. FYI - Si lo desea, puede hacer actualizaciones directamente en el directorio explotado, que es útil para el desarrollo.

+2

es así, puedo correr --delete rsync en el directiory en el servidor? – Milhous

2

puede editar el archivo conf/server.xml y añadir una entrada como esta apuntando a su directorio de guerra

<Context path="/strutsDisplayTag" 
     reloadable="true" 
     docBase="C:\work\learn\jsp\strutsDisplayTag" 
     workDir="C:\work\learn\jsp\strutsDisplayTag\work" /> 

ELSE puede copiar el archivo .war en el directorio webapps de Tomcat.

2

Nunca usamos la interfaz web, no me gusta. Las guerras se eliminan en webapps y server.xml se editan según sea necesario. Necesitará rebotar si edita server.xml, pero el archivo de guerra debería recogerse automágicamente. Por lo general, eliminamos el directorio expandido desde la guerra primero para que no haya confusión sobre el origen de los componentes.

+0

Entonces, si implementa una nueva versión de su aplicación en Tomcat, primero borre el directorio de su aplicación del directorio $ TOMCAT_HOME/webapps /, ¿correcto? ¿Tomcat elimina automáticamente el archivo .WAR? – craig

1

El Tomcat Client Deployer Package parece ser lo que necesita implementar en un servidor remoto desde la línea de comandos. Desde la página:

Este es un paquete que se puede usar para validar, compilar, comprimir en .WAR e implementar aplicaciones web en servidores Tomcat de producción o desarrollo. Cabe señalar que esta característica utiliza el Administrador de Tomcat y, como tal, el servidor Tomcat de destino debe estar ejecutándose.

23

Hay varias maneras de implementar una aplicación de web Tomcat:

  • caen en $ CATALINA_HOME/webapps, como ya se mencionó.
  • Usando sus scripts de compilación para desplegar automáticamente a través de la interfaz del administrador (que viene con Tomcat). Aquí están las dos formas
    • para Maven: use el plugin tomcat. No necesita incluirlo en pom.xml, solo emita el objetivo mvn tomcat:deploy, el complemento está incluido en Maven 2. Esto asume varios valores predeterminados explicados en el documentation, puede configure el comportamiento en el pom.xml. Hay otros objetivos que le permiten implementar como un archivo descompuesto etc..
    • para Ant: algo como esto:
 
    <property name="manager.url" value="http://localhost:8080/manager"/> 
    <property name="manager.username" value="manager"/> 
    <property name="manager.password" value="foobar"/> 
    <!-- Task definitions --> 
    <taskdef name="deploy" classname="org.apache.catalina.ant.DeployTask"/> 
    <taskdef name="list"  classname="org.apache.catalina.ant.ListTask"/> 
    <taskdef name="reload" classname="org.apache.catalina.ant.ReloadTask"/> 
    <taskdef name="undeploy" classname="org.apache.catalina.ant.UndeployTask"/> 
    <!-- goals --> 
    <target name="install" depends="compile" description="Install application to servlet container"> 
     <deploy url="${manager.url}" 
       username="${manager.username}" 
       password="${manager.password}" 
       path="${app.path}" 
       localWar="file://${build.home}"/> 
    </target> 
    <target name="list" description="List installed applications on servlet container"> 
     <list url="${manager.url}" 
       username="${manager.username}" 
       password="${manager.password}"/> 
    </target> 
    <target name="reload" depends="compile" description="Reload application on servlet container"> 
     <reload url="${manager.url}" 
       username="${manager.username}" 
       password="${manager.password}" 
       path="${app.path}"/> 
    </target> 
    <target name="remove" description="Remove application on servlet container"> 
     <undeploy url="${manager.url}" 
       username="${manager.username}" 
       password="${manager.password}" 
       path="${app.path}"/> 
    </target> 

Todos los que se requiere que tenga una configuración de usuario Tomcat. Vive $CATALINA_BASE/conf/tomcat-users.xml, pero como ya sabes cómo usar la interfaz web, supongo que sabes cómo configurar los usuarios y las contraseñas.

+0

Hola, tengo una instalación similar pero obtengo FileNotFoundException: 'http: // localhost: 8080/manager/deploy? Path =% 2Feccount & war = archivo% 3A% 2F% 2FC% 3A% 5Ceccount% 2Fout% 2FWAR-explosioned' . Aunque el archivo está disponible en 'file: /// C:/eccount/out/WAR-explosioned' a través del navegador web. Mi versión de tomcat es 7.0.37. – prayagupd

1

También puedes probar este command-line script for managing tomcat llamado tomcat-manager. Requiere Python y habla con la aplicación de administrador incluida con tomcat a través de HTTP.Puede hacer cosas desde un shell * nix como:

$ tomcat-manager --user=admin --password=newenglandclamchowder \ 
> http://localhost:8080/manager/ stop /myapp 

y:

$ tomcat-manager --user=admin --password=newenglandclamchowder \ 
> http://localhost:8080/manager deploy /myapp ~/src/myapp/myapp.war 
Cuestiones relacionadas