Spring DevTools
Spring DevTools fournit des redémarrages automatiques de l'application lorsque le code change. webforJ DevTools ajoute un rafraîchissement automatique du navigateur - lorsque Spring redémarre votre application, le navigateur se rafraîchit automatiquement via le serveur LiveReload de webforJ.
Différents types de fichiers déclenchent des comportements de rechargement différents. Les changements de code Java provoquent un redémarrage complet de Spring et un rafraîchissement du navigateur. Les changements CSS et d'image se mettent à jour sans rechargement de page, préservant les données de formulaire et l'état de l'application.
Comprendre webforJ DevTools
webforJ étend Spring DevTools avec une synchronisation du navigateur. Lorsque Spring détecte des changements de fichiers et redémarre, webforJ DevTools rafraîchit automatiquement votre navigateur.
Comportement de rechargement
Différents types de fichiers déclenchent différentes stratégies de rechargement :
- Fichiers Java : Rechargement complet de la page du navigateur après le redémarrage de Spring
- Fichiers JavaScript : Rechargement complet de la page du navigateur après le redémarrage de Spring
- Fichiers CSS : Mises à jour de style sans rechargement de page
- Images : Rafraîchissement sur place sans rechargement de page
Dépendances
Ajoutez à la fois Spring DevTools et webforJ DevTools à votre projet :
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.webforj</groupId>
<artifactId>webforj-spring-devtools</artifactId>
<version>${webforj.version}</version>
<optional>true</optional>
</dependency>
Configuration
Activez webforJ DevTools dans votre fichier application.properties :
# Activer le rechargement automatique du navigateur webforJ
webforj.devtools.livereload.enabled=true
# Activer l'arrêt immédiat pour des redémarrages plus rapides
server.shutdown=immediate
Configuration avancée
Configurez la connexion WebSocket et le comportement de rechargement :
# Port du serveur WebSocket (par défaut : 35730)
webforj.devtools.livereload.websocket-port=35730
# Chemin d'accès de l'endroit WebSocket (par défaut : /webforj-devtools-ws)
webforj.devtools.livereload.websocket-path=/webforj-devtools-ws
# Intervalle de battement en millisecondes (par défaut : 30000)
webforj.devtools.livereload.heartbeat-interval=30000
# Activer le rechargement à chaud pour les ressources statiques (par défaut : true)
webforj.devtools.livereload.static-resources-enabled=true
# Activer l'ouverture du navigateur (par défaut : false)
webforj.devtools.browser.open=true
# localhost, nom d'hôte ou adresse IP (par défaut : localhost)
webforj.devtools.browser.host=localhost