I like to create immutable classes. When using lombok we can easily create immutable classes.
From time to time you only want to run one test, one test method, one class or one package from the command-line. Or on the contrary: you want to exclude / ignore one specific test or group of tests during the build cycle. Excluding tests from the build cycle by the command line usually occurs when the following scenarios meet:
With a Spring (Boot/Cloud) application you can create a fully executable JAR, where the jar can be run from the command-line by just calling
My colleague Mr. Haki wrote Grails Goodness: Creating A Fully Executable Jar.
Together with the famous one-liner of Josh Long in mind: "Make JAR not WAR!", create a JAR whenever you develop a Spring Boot/Cloud application.
As described in Mr. Haki's blog, it is very easy to make our Spring application executable: