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 Neu ladungsverhalten aus. Änderungen im Java-Code verursachen einen vollständigen Spring-Neustart und eine Browseraktualisierung. CSS- und Bildänderungen werden ohne eine Seitenaktualisierung aktualisiert, wobei Formulardaten und Anwendungszustand erhalten bleiben.

Verständnis von webforJ DevTools

webforJ erweitert Spring DevTools mit Browser-Synchronisation. Wenn Spring Date Ä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 Aktualisierung der Browserseite nach dem Spring-Neustart
  • JavaScript-Dateien: Vollständige Aktualisierung der Browserseite nach dem Spring-Neustart
  • CSS-Dateien: Stiländerungen ohne Seitenaktualisierung
  • Bilder: Aktualisierung vor Ort ohne Seitenaktualisierung

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>
<optionale>true</optionale>
</dependency>

<dependency>
<groupId>com.webforj</groupId>
<artifactId>webforj-spring-devtools</artifactId>
<version>${webforj.version}</version>
<optionale>true</optionale>
</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

# Sofortiges Herunterfahren 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-Endpunktpfad (Standard: /webforj-devtools-ws)
webforj.devtools.livereload.websocket-path=/webforj-devtools-ws

# Heartbeat-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
# Aktivieren Sie das Öffnen des Browsers (Standard: false)
webforj.devtools.browser.open=true

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