In December last year, freelance software consultant Maciej Walkowiak, who also is the lead developer of Spring Cloud AWS, released just, a command-line toolkit for developing Spring Boot applications.
I’ve been using just since then and I’m extremely happy with this tool and how it has improved my development experience with Spring Boot.
Although Spring Boot already provides a more than decent developer experience – especially when it comes to getting up and running quickly and integrating technologies and data sources – compared with tried-and-true, yet still groundbreaking full-stack web application frameworks like Ruby on Rails or web front-end frameworks or libraries such as Angular or React, live reloading and quick turnaround experience always seemed to be a bit lacking with Spring Boot.
While to a limited extent Spring Boot provides extensions and utilities to help with that, these utilities often require additional configuration or even involve installing obsolete browsers extensions.
This is where just comes in. just is a unified CLI tool that not only starts a Spring Boot application itself but its dependencies, too, such as Docker containers defined in a docker-compose.yml (e.g., for running a PostgreSQL database at development time).
Most importantly though, just provides a first-class live-reloading experience.
When running this command from a Spring Boot application’s root directory, just will configure live reloading for your application, so whenever you change Java code your application will automatically reload without you having to manually trigger a build-and-compile run:
1 | just run |
Even when merely editing the HTML code of a Thymeleaf template, in case the page generated through that template is open in your local browser, just will automatically have your web application reload that page, with no need for you to hit the reload button in their browser anymore! Traditionally, with Spring Boot applications this required those obsolete browsers extensions mentioned before. Now, with just Spring Boot developers can profit from a modern browser application development experience, too.
Finally, just also comes with an IntelliJ IDEA IDE integration. So, you don’t even need to keep a separate terminal window open, if that’s not your kind of work setup.