Mit Spring Boot CLI können Spring Applikationen von der Command Line aus gestartet und getestet werden. Man kann eine Spring Boot Applikation haben indem nur Applikationssode geschrieben wird, die Infrastrukturarbeit wird von Spring Boot CLI übernommen.
Spring Boot CLi beinhaltet Befehle um Initializr zu benutzen. Damit kann eine traditionellere Java Projektstruktur erreicht werden.
Ab der Version 1.2.0 enthält Spring Boot CLI einen „init“-Befehl, der sozusagen als Client-Schnittstelle zu Initializr agiert.
Installation:
Die gewünschte Spring Boot CLI Version runterladen z.B. aus folgendem Repo
Danach das Zip-File entpacken und SPRING_HOME/bin in PATH der Umgebungsvariablen aufnehmen.
$ spring init
Nach diesem Aufruf wird eine demo.zip Datei erzeugt. Die Datei beinhaltet eine gängige Projektstruktur mit einer Maven pom.xml. Diese pom.xml enthält nur die grundlegenden starters für Spring Boot und das testen.
Um dieses Beispiel nachzumachen kann der Parameter –dependency oder –d benutzt werden.
$ spring init –dweb,jpa,security
Zu beachten ist, dass zwischen dem Parameter –d und den dependencies kein Leerzeichen besteht. Ein Leerzeichen wird dafür sorgen, dass die Zip-Datei web,jpa,security benannt wird.
Wenn wir noch komforme an das Beispiel sein wollen kann mit dem Parameter –build entschieden werden ob ein Maven bzw. Gradle Projekt erzeugt werden soll.
$ spring init -dweb,jpa,security --build gradle
Per Default wird das Projekt als Jar gepackt. Mit dem Parameter –p oder –packaging lässt sich das Projekt in einem anderen Format zum Beispiel als War-Datei gepackt werden.
$ spring init -dweb,jpa,security -build gradle -p war
Der Aufruf des obigen Befehls wird dafür sorgen, das eine Zip-Datei namens Demo.zip runtergeladen wird.
Alternative zu dieser Variante ist folgende Aufruf:
$ spring init -dweb, jpa, security -build gradle -p war /ben
Der Aufruf sorgt dafür, dass das Projekt in einem Ordner names ben gleich entpackt wird.
Ein weglassen des slashes „/“ führt dazu, dass die Zip-Datei ben genannt wird