La forma en que está usando Maven, Jetty (y Eclipse) juntos no está claro, pero dado que la pregunta está etiquetada Maven, cubriré el modo Maven. Con un proyecto del tipo war
, una manera fácil de poner en marcha la webapp es usar el Maven Jetty Plugin. Para ello, basta con añadir el siguiente fragmento de su POM:
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.1.10</version>
</plugin>
...
</plugins>
...
</build>
...
</project>
Con esta configuración, corriendo mvn jetty:run
se iniciará un recipiente embarcadero con su aplicación implementada. Cualquier cambio en una vista hará que el JSP se vuelva a compilar cuando se solicite. Y para configurar el embarcadero complemento para mirar también por cambios en el código de Java, que tendrá que añadir la opción scanIntervalSeconds
:
scanIntervalSeconds
opcional. La pausa en segundos entre los barridos de la aplicación web para comprobar los cambios y volver a desplegar automáticamente en caliente si se detecta alguno. De manera predeterminada, esto es 0, que deshabilita la exploración de implementación en caliente. Un número mayor que 0 lo habilita.
Así la configuración podría ser:
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.1.10</version>
<configuration>
<scanIntervalSeconds>1</scanIntervalSeconds>
</configuration>
</plugin>
...
</plugins>
...
</build>
...
</project>
Y si usted quiere ser capaz de conectar un depurador remoto, echar un vistazo a these instructions.
Así es como siempre he usado Jetty con Maven y Eclipse, y siempre he estado contento con esta configuración. Nunca he usado el adaptador Jetty para la WTP, la configuración anterior es simplemente inmejorable.
Acabo de toparme con esta publicación, debo mencionar que una solución comercial para este problema es http://www.zeroturnaround.com/jrebel/. – Andy