Zum Hauptinhalt springen

Spring DevTools

In ChatGPT öffnen

Spring DevTools bietet automatische Neustarts der Anwendung bei Codeänderungen. webforJ DevTools fügt eine automatische Aktualisierung des Browsers hinzu - wenn Spring Ihre Anwendung neu startet, wird der Browser automatisch über den LiveReload-Server von webforJ aktualisiert.

Verschiedene Dateitypen lösen unterschiedliche Reload-Verhalten aus. Änderungen am Java-Code führen zu einem vollständigen Neustart von Spring und einer Aktualisierung des Browsers. Änderungen an CSS und Bildern werden ohne Seitenneuladen aktualisiert und bewahren die Formulardaten und den Anwendungszustand.

Frontend-Änderungen

Änderungen im src/main/frontend werden vom frontend watch behandelt, welches sie neu kompiliert und den Browser zusammen mit dem Server aktualisiert.

Verständnis von webforJ DevTools

webforJ erweitert Spring DevTools um die Browser-Synchronisation. Wenn Spring Dateiänderungen erkennt und neu startet, aktualisiert webforJ DevTools automatisch Ihren Browser.

Reload-Verhalten

Verschiedene Dateitypen lösen unterschiedliche Reload-Strategien aus:

  • Java-Dateien: Vollständige Seitenaktualisierung des Browsers nach dem Neustart von Spring
  • JavaScript-Dateien: Vollständige Seitenaktualisierung des Browsers nach dem Neustart von Spring
  • CSS-Dateien: Stilaktualisierungen ohne Seitenneuladen
  • Bilder: Aktuallisierung vor Ort ohne Seitenneuladen

Abhängigkeiten

Fügen Sie sowohl Spring DevTools als auch webforJ DevTools zu Ihrem Projekt hinzu:

pom.xml
<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>

Konfiguration

Aktivieren Sie webforJ DevTools in Ihrer application.properties-Datei:

application.properties
# Aktivieren Sie die automatische Aktualisierung des Browsers von webforJ
webforj.devtools.livereload.enabled=true

# Sofortige Abschaltung für schnellere Neustarts aktivieren
server.shutdown=immediate

Erweiterte Konfiguration

Konfigurieren Sie die WebSocket-Verbindung und das Reload-Verhalten:

application.properties
# WebSocket-Serverport (Standard: 35730)
webforj.devtools.livereload.websocket-port=35730

# WebSocket-Endpunkt-Pfad (Standard: /webforj-devtools-ws)
webforj.devtools.livereload.websocket-path=/webforj-devtools-ws

# Herzschlag-Intervall in Millisekunden (Standard: 30000)
webforj.devtools.livereload.heartbeat-interval=30000

# Hot Reload für statische Ressourcen aktivieren (Standard: true)
webforj.devtools.livereload.static-resources-enabled=true

25.03 Konfigurieren Sie das Öffnen des Browsers beim Start der Anwendung:

application.properties
# Öffnen des Browsers aktivieren (Standard: false)
webforj.devtools.browser.open=true

# localhost, Hostname oder IP-Adresse (Standard: localhost)
webforj.devtools.browser.host=localhost