J'ai un projet Spring Roo et j'utilise mvn jetty:run
pour exécuter mon application. Le seul problème est que les modifications apportées aux classes *.java
ne se déploient pas à chaud, alors que les modifications apportées au *.jspx
se déploient très bien. Comment puis-je configurer mvn jetty pour hotdeploy pour les classes java?déployer à chaud dans la jetée intégrée
Répondre
Vous devez définir la scanIntervalSeconds
à une valeur supérieure à 0 pour l'activer:
scanIntervalSeconds
- L'intervalle en secondes pour numériser la webapp pour les changements et redémarrez le contexte si nécessaire. Ignoré si le rechargement est activé. Désactivé par défaut Valeur par défaut est: 0.
Ainsi, la puissance de configuration ressemble à ceci:
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.1.22</version>
<configuration>
<scanIntervalSeconds>1</scanIntervalSeconds>
</configuration>
</plugin>
Une fois activé, le plugin maven jetée balayera le répertoire défini dans classDirecory
(qui pointe vers ${project.build.outputDirectory}
par par défaut, c'est-à-dire target/classes
) pour les modifications.
Vous avez juste besoin d'avoir vos classes de compilation IDE dans target/classes
(ou pour exécuter mvn compile
) et Jetty redémarrera le contexte lors des changements sur les classes Java.
Merci beaucoup! :) – portoalet
Il y a 404 erreurs pendant que Jetty redéploie les classes. Toute suggestion pour les éviter? Voir aussi cette question: http://stackoverflow.com/questions/23343243/jetty-404-error-page-on-hot-deployment – tholu
Malheureusement redéploiement avec zéro temps d'arrêt nécessite beaucoup d'efforts dans le monde de Java :(Edit: Will essayez ceci: http://www.rafaelsteil.com/zero-downtime-deploy-script-for-jetty/ – tholu