Spring Boot 2 Devtools¶

Static Resource Caching¶

application.properties

#spring.freemarker.cache = true //set true in production environment
spring.freemarker.cache = false //set false in development environment; It is false by default.
//Other such properties
spring.thymeleaf.cache = false
spring.mustache.cache = false
spring.groovy.template.cache = false
Auto-refresh vs Auto-restart – Auto-refresh (or auto-load) refer to UI reload at browser to see static content changes. Auto-restart is referred to reloading the server side code and configurations followed by server restart.

Automatic UI refresh¶

By default, live reload is enabled. If you wish to disable this feature for some reason, then set spring.devtools.livereload.enabled property to false.

application.properties

spring.devtools.livereload.enabled  = false #Set false to disable live reload

Excluding Resources from auto-reload¶

By default, Auto-reload works on these paths:

  1. /META-INF/maven
  2. /META-INF/resources
  3. /resources
  4. /static
  5. /public
  6. /templates

If you want to disable auto-reload in browser for files in few of these paths, then use spring.devtools.restart.exclude property. e.g.

spring.devtools.restart.exclude=static/**,public/**

Watching/Excluding Additional Paths¶

There may be few files not in classpath, but you still may want to watch those addtional files/paths to reload the application. To do so, use the spring.devtools.restart.additional-paths property.

spring.devtools.restart.additional-paths=script/**

Similarily, If you want to keep those defaults and add additional exclusions, use the spring.devtools.restart.additional-exclude property instead.

spring.devtools.restart.additional-exclude=styles/**

Automatic server restart¶

Enable/disable logging of auto-configuration changes¶

spring.devtools.restart.log-condition-evaluation-delta = false

Disabling Restart¶

spring.devtools.restart.enabled = false

Using a Trigger File¶

Use spring.devtools.restart.trigger-file property to mention the trigger file for your application. It can be any external or internal file.

spring.devtools.restart.trigger-file = d:/workspace/restart-trigger.txt

Global settings file¶

To create global file, go to your system’s user’s home directory and create a file named .spring-boot-devtools.properties. (Please note that file name start with a dot). Not use this global property file to configure globally available options. .spring-boot-devtools.properties

spring.devtools.restart.trigger-file = d:/workspace/restart-trigger.txt