Plugin Spring Boot Gradle

1. Panoramica

Il plug-in Spring Boot Gradle ci aiuta a gestire le dipendenze di Spring Boot, nonché a creare pacchetti ed eseguire la nostra applicazione quando si utilizza Gradle come strumento di compilazione.

In questo tutorial, discuteremo di come aggiungere e configurare il plug-in, quindi vedremo come creare ed eseguire un progetto Spring Boot.

2. Configurazione file build

Innanzitutto, dobbiamo aggiungere il plug-in Spring Boot al nostro file build.gradle includendolo nella nostra sezione plug -in:

plugins { id "org.springframework.boot" version "2.0.1.RELEASE" }

Se stiamo usando una versione Gradle precedente alla 2.1 o abbiamo bisogno di una configurazione dinamica, possiamo aggiungerla in questo modo:

buildscript { ext { springBootVersion = '2.0.1.RELEASE' } repositories { mavenCentral() } dependencies { classpath( "org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") } } apply plugin: 'org.springframework.boot'

3. Imballaggio della nostra applicazione

Possiamo impacchettare la nostra applicazione in un archivio eseguibile (file jar o war) costruendola utilizzando il comando build :

./gradlew build

Di conseguenza, l'archivio eseguibile generato verrà posizionato nella directory build / libs .

Se vogliamo generare un file jar eseguibile , dobbiamo anche applicare il plugin java :

apply plugin: 'java'

D'altra parte, se abbiamo bisogno di un file war , applicheremo il plugin war :

apply plugin: 'war'

La creazione dell'applicazione genererà archivi eseguibili sia per Spring Boot 1.x che per 2.x. Tuttavia, per ogni versione, Gradle attiva attività diverse.

Successivamente, diamo uno sguardo più da vicino al processo di compilazione per ciascuna versione di avvio.

3.1. Spring Boot 2.x

In Boot 2.x, le attività bootJar e bootWar sono responsabili della creazione del pacchetto dell'applicazione.

L' attività bootJar è responsabile della creazione del file jar eseguibile . Viene creato automaticamente una volta applicato il plug-in java .

Vediamo come possiamo eseguire direttamente l'attività bootJar :

./gradlew bootJar

Allo stesso modo, bootWar genera un file war eseguibile e viene creato una volta applicato il plugin war .

Possiamo eseguire l' attività bootWar usando:

./gradlew bootWar

Nota che per Spring Boot 2.x, dobbiamo usare Gradle 4.0 o successivo.

Possiamo anche configurare entrambe le attività. Ad esempio, impostiamo la classe principale utilizzando la proprietà mainClassName :

bootJar { mainClassName = 'com.baeldung.Application' }

In alternativa, possiamo usare la stessa proprietà dal DSL Spring Boot:

springBoot { mainClassName = 'com.baeldung.Application' }

3.2. Spring Boot 1.x

Con Spring Boot 1.x, bootRepackage è responsabile della creazione dell'archivio eseguibile ( file jar o war a seconda della configurazione.

Possiamo eseguire l' attività bootRepackage direttamente usando:

./gradlew bootRepackage

Simile alla versione Boot 2.x, possiamo aggiungere configurazioni all'attività bootRepackage nel nostro build.gradle:

bootRepackage { mainClass = 'com.example.demo.Application' }

Possiamo anche disabilitare l' attività bootRepackage impostando l' opzione enabled su false:

bootRepackage { enabled = false }

4. Esecuzione della nostra applicazione

Dopo aver compilato l'applicazione, possiamo semplicemente eseguirla utilizzando il comando java -jar sul file jar eseguibile generato:

java -jar build/libs/demo.jar

Il plugin Spring Boot Gradle ci fornisce anche l' attività bootRun che ci consente di eseguire l'applicazione senza la necessità di crearla prima:

./gradlew bootRun

L' attività bootRun può essere semplicemente configurata in build.gradle.

Ad esempio, possiamo definire la classe principale:

bootRun { main = 'com.example.demo.Application' }

5. Relazione con altri plugin

5.1. Plugin per la gestione delle dipendenze

Per Spring Boot 1.x, applicava automaticamente il plug-in di gestione delle dipendenze. Ciò importerebbe la BOM delle dipendenze di Spring Boot e si comporterebbe in modo simile alla gestione delle dipendenze per Maven.

Ma a partire da Spring Boot 2.x, dobbiamo applicarlo esplicitamente nel nostro build.gradle se abbiamo bisogno di questa funzionalità:

apply plugin: 'io.spring.dependency-management'

5.2. Plugin Java

Quando applichiamo il plug-in java , il plug-in Spring Boot Gradle esegue più azioni come:

  • creando un'attività bootJar , che possiamo usare per generare un file jar eseguibile
  • creando un'attività bootRun , che possiamo usare per eseguire direttamente la nostra applicazione
  • disabilitare l' attività jar

5.3. Plugin di guerra

Allo stesso modo, quando applichiamo il plugin war , ciò si traduce in:

  • creando l' attività bootWar , che possiamo usare per generare un file war eseguibile
  • disabilitando il compito di guerra

6. Conclusione

In questo breve tutorial, abbiamo imparato a conoscere il plug-in Spring Boot Gradle e le sue diverse attività.

Inoltre, abbiamo discusso di come interagisce con altri plugin.