2009-11-25 12 views
9

Estoy ejecutando Tomcat 6 en Windows. Tengo el icono de la bandeja del sistema "Monitor Tomcat" que me permite iniciar y cerrar Tomcat, pero ¿hay alguna otra herramienta pequeña que me permita recargar fácilmente mi aplicación web cuando cambie los archivos de clase? Sé que la aplicación "manager" que viene con Tomcat tiene una opción de redistribución, pero me pregunto si hay una aplicación nativa que lo haga un poco más rápido y mejor.¿Cuál es una manera fácil y rápida de volver a cargar una aplicación web en tomcat en entorno de desarrollo?

+0

Consulte https://stackoverflow.com/questions/6583502/how-do-i-update-a-tomcat-webapp-without-restarting-the-entire-service/6584259#6584259 que voy a describir como la pregunta "canónica de facto" para reiniciar webapps en Tomcat, aunque se preguntó más tarde. – rogerdpack

Respuesta

11

Solo agregue un atributo reloadable=true al Context. Citando al documentation: Conjunto

a true si quieres Catalina para supervisar las clases en /WEB-INF/classes/ y /WEB-INF/lib para los cambios, y automáticamente vuelve a cargar la aplicación web si se detecta un cambio. Esta característica es muy útil durante el desarrollo de aplicaciones, pero requiere una sobrecarga significativa en el tiempo de ejecución y no se recomienda su uso en aplicaciones de producción implementadas. Es por eso que la configuración predeterminada para este atributo es false. Sin embargo, puede utilizar la aplicación web Manager para desencadenar recargas de aplicaciones desplegadas a pedido.

13

Asumiendo que ya ha creado reloadable=true, puede touch o bien el archivo de la guerra en el directorio de aplicaciones web o un archivo supervisado como WEB-INF/web.xml en el directorio de la aplicación explotado. Esto actualizará la marca de tiempo y hará que la aplicación se vea nueva, por lo que se volverá a cargar.

En nuestra empresa, ejecutamos nuestros servidores de aplicaciones web en modo dev todo el tiempo solo para facilitar esto. Al diablo con la recomendación, sabemos mejor que ejecutar nuestra aplicación con un 99% de carga, por lo que no podemos perder unos pocos ciclos.

Cuestiones relacionadas