Redespliegue y recarga en vivo
Durante el desarrollo, webforJ aplica los cambios guardados a la aplicación en ejecución y actualiza el navegador. Los cambios en las clases alcanzan la aplicación a través de una herramienta de hotswap o mediante un reinicio. La recarga en vivo actualiza el navegador después de cualquiera de estas acciones.
Los proyectos creados a partir de un arquetipo vienen configurados. Para un proyecto existente, sigue Spring Boot, Jetty o BBjServices.
Cómo se aplica cada cambio
| Cambio | Resultado | Referencia |
|---|---|---|
| Clase Java, herramienta de hotswap adjunta | La clase se actualiza en la aplicación en ejecución. La parte afectada de la página se reconstruye y el estado de la aplicación se mantiene. | Hotswap |
| Clase Java, sin herramienta de hotswap | La aplicación se reinicia. El navegador se recarga cuando la aplicación está lista. | Spring Boot, Jetty |
| Clase Java en BBjServices, sin herramienta de hotswap | El cambio no se aplica hasta que el watch comienza nuevamente. | BBjServices |
| Hoja de estilo o imagen | La página lo aplica en su lugar, sin recarga. | Settings |
Código fuente bajo src/main/frontend | El watch lo reconstruye y actualiza el navegador. | Frontend watch |
Configuraciones
Estas configuraciones controlan la recarga en vivo durante el desarrollo:
| Propiedad | Predeterminado | Descripción |
|---|---|---|
webforj.devtools.livereload.enabled | false | Activa la recarga en vivo para ejecuciones de desarrollo. |
webforj.devtools.livereload.websocket-port | 35730 | Puerto para la conexión del navegador. |
webforj.devtools.livereload.websocket-path | /webforj-devtools-ws | Ruta para la conexión del navegador. |
webforj.devtools.livereload.static-resources-enabled | true | Aplica cambios en hojas de estilo e imágenes en su lugar en lugar de recargar la página. |
webforj.devtools.livereload.heartbeat-interval | 30000 | Intervalo en milisegundos para las verificaciones de conexión que detectan un servidor en reinicio. |
Las claves no tienen efecto en una aplicación empaquetada. Las aplicaciones empaquetadas no contienen herramientas de desarrollo.
Temas
Intercambio en caliente
Apply compiled class changes to a running webforJ app without a restart, through HotswapAgent or JRebel configured in the webforJ build plugin.
Supervisión del frontend
Rebuild the sources under src/main/frontend while a webforJ app runs, applying stylesheet and image output in place and reloading the view for script output.
Spring Boot
Set up live reload in a Spring Boot webforJ app, with the development tools delivered by the webforJ build plugin.
Jetty
Run a webforJ app on the embedded Jetty server with the Maven Jetty plugin, with live reload and hotswap during development.
BBjServices
Set up live reload and hotswap for a webforJ app that runs in the BBjServices of your own machine through BBjShip.
