Spring DevTools
Spring DevTools tarjoaa automaattiset sovelluksen uudelleenkäynnistykset koodimuutosten yhteydessä. webforJ DevTools lisää automaattisen selainpäivityksen - kun Spring käynnistää uudelleen sovelluksesi, selain päivittyy automaattisesti webforJ:n LiveReload-palvelimen kautta.
Eri tiedostotyypit laukaisevat erilaisia uudelleenlatauskäyttäytymisiä. Java-koodimuutokset aiheuttavat täydellisen Spring-uudelleenkäynnistyksen ja selainpäivityksen. CSS- ja kuvamuutokset päivitetään ilman sivun lataamista, säilyttäen lomakedatan ja sovellustilan.
Muutokset, jotka sijaitsevat src/main/frontend-kansiossa, käsitellään frontend watch -työkalun avulla, joka kokoaa ne uudelleen ja päivittää selaimen yhdessä palvelimen kanssa.
Ymmärrä webforJ DevTools
webforJ laajentaa Spring DevToolsia selaimen synkronoinnilla. Kun Spring havaitsee tiedostomuutoksia ja käynnistää uudelleen, webforJ DevTools päivittää selaimesi automaattisesti.
Uudelleenlatauskäyttäytyminen
Eri tiedostotyypit laukaisevat erilaisia uudelleenlatausstrategioita:
- Java-tiedostot: Täydellinen selainikkunan lataus Spring-uudelleenkäynnistyksen jälkeen
- JavaScript-tiedostot: Täydellinen selainikkunan lataus Spring-uudelleenkäynnistyksen jälkeen
- CSS-tiedostot: Tyylipäivitykset ilman sivun lataamista
- Kuvat: Päivitetään paikallaan ilman sivun lataamista
Riippuvuudet
Lisää sekä Spring DevTools että webforJ DevTools projektiisi:
<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>
Kokoonpano
Ota käyttöön webforJ DevTools application.properties-tiedostossasi:
# Ota käyttöön webforJ:n selaimen automaattinen päivitys
webforj.devtools.livereload.enabled=true
# Ota käyttöön välitön sammuttaminen nopeampia uudelleenkäynnistyksiä varten
server.shutdown=immediate
Kehittynyt kokoonpano
Määritä WebSocket-yhteys ja uudelleenlatauskäyttäytyminen:
# WebSocket-palvelimen portti (oletus: 35730)
webforj.devtools.livereload.websocket-port=35730
# WebSocket-päätteentien, (oletus: /webforj-devtools-ws)
webforj.devtools.livereload.websocket-path=/webforj-devtools-ws
# Sydämenlyöntiväli millisekunteina (oletus: 30000)
webforj.devtools.livereload.heartbeat-interval=30000
# Ota käyttöön kuuma uudelleenlataus staattisia resursseja varten (oletus: true)
webforj.devtools.livereload.static-resources-enabled=true
# Ota käyttöön selaimen avautuminen (oletus: false)
webforj.devtools.browser.open=true
# localhost, isäntänimi tai IP-osoite (oletus: localhost)
webforj.devtools.browser.host=localhost