Spring Boot DevTools を使うことによって、コードを修正して確認といったサイクルを短くすることができます。
使い方
build.gradle
やpom.xml
で依存関係を追加するだけです。
dependencies {
compile("org.springframework.boot:spring-boot-devtools")
}
Automatic restart
クラスパス上のファイルが変更されると、自動でアプリケーションを再起動してくれます。
Thymeleafのテンプレートなど、もともと再起動が必要ではないのが変更されても再起動されません。
なお、Spring Boot DevToolsを使うと、Thymeleafのキャッシュも無効(spring.thymeleaf.cache=false
と同じ)となりますので、再起動しなくてもキャッシュが効いていて最新にならない、、といったことはありません。
LiveReload
Automatic restartでアプリケーションが常に最新の状態になっても、ブラウザをリロードしないと表示内容は古いままです。
LiveReloadは、アプリケーションが再起動されたら、ブラウザも自動でリロードしてくれる機能です。 動作させるためには、ブラウザにアドオンを入れる必要があります。
アドオンを入れると、アイコンが追加されます。対象の画面を表示した状態でアイコンを押下すると、LiveReloadが有効になります。
Thymeleafのテンプレートなど、Automatic restartの対象とならないものでも、変更されたタイミングで検知してくれます。
これでコードを書けば勝手にブラウザに最新の状態のものが表示されるようになります。便利ですね!