Live Reload
In Vaadin projects, Live Reload is supported out of the box for frontend code changes, and for Java changes in Spring Boot projects. For the latter, it also integrates with popular third-party Java hotpatching tools.
Code in the application’s folder (JS/TS/CSS files) is monitored by webpack-dev-server
when running the application in development mode. Adding, modifying or removing a file in this folder triggers recompilation of the frontend bundle and subsequent a browser reload.
Note that only one of these technologies should be configured in the project at a time to avoid interference. In general, hotpatching is faster than automatic restarts and works best for small, incremental changes. Larger changes, such as class level modifications or changes to code that affect the whole application lifecycle (startup, shutdown, mapping between frontend and backend components), usually necessitate a server restart regardless.
As an alternative to Live Reload, the Jetty and TomEE Maven plugins facilitate automatic server restart on Java changes. These do not require installing third-party tools, but have the disadvantage that server restarts are slower and the browser will not refresh automatically.