Gerade wurde die Version 1.3.0 von Spring Boot veröffentlicht. Die Liste der Release-Notes ist beeindruckend lang. Eine der interessantesten Neuerungen dürften die spring-boot-devtools sein:
- sinnvolle Default-Properties zur Entwicklungszeit (z. B. ausgeschaltete Template-Caches)
- automatische Anwendungsneustarts (Alternative zu JRebel oder Spring Loaded)
- Live-Reload Unterstützung (Browser Refresh)
- Remote Entwicklungsunterstützung (Remote Updates und Debugging über HTTP Tunnel)
- dauerhafte HTTP Session über Neustarts hinweg
Insbesondere die automatischen Anwendungsneustarts und das Live-Reload dürfte uns Entwickler wieder etwas produktiver machen. Im Gegensatz zu JRebel wird zwar kein Instant-Reload gemacht. Die automatischen Neustarts (ausgelöst durch jede Änderung von Dateien im Klassenpfad) sind allerdings so optimiert, dass sie insbesondere bei kleinen Microservice-Anwendungen nur unwesentlich langsamer sind. Dafür benötigen sie aber weder kostenpflichtige Lizenzen noch zusätzliche Konfiguration in der IDE. Das Live-Reload nimmt uns nach den automatischen Neustarts den Klick auf den Browser-Refresh-Button ab. Dafür werden zwar Browser-Plugins benötigt, die sind aber für Chrome, Firefox und Co. verfügbar. Die Spring Boot Dev-Tools werden übrigens einfach als Maven Dependency hinzugefügt und aktiviert:
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> </dependency> </dependencies>
Natürlich basiert Spring Boot nun auch wieder auf der neuesten Spring Framework Version (4.2.3). Informationen zu den weiteren Neuerungen kann man auf dem Spring-Blog nachlesen. Dazu zählen unter anderem:
- neue Auto-Konfigurationen (z. B. für Cache-Provider)
- Bauen von als Services ausführbaren JARs
- farbige Banner (Abwechslung in der schwarz-weißen Welt der Logging-Ausgaben)
- aktivierbare Unterstützung von Servlet 3.0 Annotationen bei eingebetteten Containern

