In Java Come creare un file di archivio .jar / .tar.gz / .zip utilizzando maven-assembly-plugin? Esercitazione sul progetto Maven e Enterprise

Pubblicato: 2020-10-07
all-in-one-suggerimenti-e-tutorial-su-apache-maven-build-java-enterprise-project-using-maven

Maven è piuttosto sorprendente. Con così tanti plugin è uno dei Best Java Build tool sul mercato in questo momento.

Lo uso in tutti i miei progetti e dipende molto da esso. Le possibilità di costruzione sono infinite. Qualche tempo fa ho scritto diversi tutorial su tanti altri plugin Maven e in questo esamineremo maven-assembly-plugin .

Maven Assembly Plugin si basa sui descrittori di assembly forniti per determinarne l'esecuzione.

Ecco un elenco di precedenti tutorial sui plugin Maven:

  • maven-war-plugin – Crea il file .war del progetto.
  • maven-resources-plugin , maven-dependency-plugin e maven-jar-plugin – Creare un progetto Java che includa tutte le dipendenze?
  • maven-shade-plugin : crea .jar eseguibile basato su Java + Spring con tutte le dipendenze, le proprietà e le risorse richieste.

Hai una delle seguenti domande? Questo tutorial funzionerà anche per questo.

  • Come creare un file jar con Maven?
  • Come usare Maven per creare file jar con dipendenze
  • Usa pom.xml per creare jar
  • Il modo migliore per creare jar Maven senza dipendenze
  • Come creare jar Maven comprese le dipendenze

Iniziamo con maven-assembly-plugin

Passo 1

Crea il progetto New Maven nell'ambiente Eclipse. Chiamalo come CrunchifyMavenBuildPlugins . Se hai un progetto Web dinamico o un progetto Java esistente, utilizzando questi passaggi puoi convertire il progetto in un progetto Maven. Dopo aver convertito il progetto in Maven, dovresti vedere il file pom.xml generato di cui abbiamo bisogno per questo tutorial.

Ecco la struttura del mio progetto. Sto usando il mio progetto esistente che ha un totale di 8 java files nel pacchetto /src/com/crunchify/tutorials .

plugin di assemblaggio Maven - Crunchify Tutorial

Passo 2

Apri il file pom.xml del tuo progetto aggiungi nuovo <plugin></plugin> principalmente line 28 to 38 .

Passaggio 3

Crea un nuovo file crunchify.xml e inseriscilo in /src/com/crunchify/assembly package. Abbiamo già fatto riferimento a questo file nel file pom.xml sopra.

Qui stiamo esportando il nostro progetto in 3 diversi <formats>

  • tar.gz
  • cerniera lampo
  • catrame

Il tag <directory> mostra che: prendi tutto sotto il pacchetto src/com/crunchify/tutorial e mettilo nella cartella crunchify-output che è menzionata sotto il tag <outputDirectory> .

Se vuoi includere tutto come il contenuto della cartella /src o /resource , puoi utilizzare di seguito sotto diverse varianti:

  1. <directory> src/com/crunchify/tutorial </directory>
  2. <directory> src </directory> : tutto nella cartella src
  3. <directory> resources </directory> : tutto nella cartella delle risorse
  4. <directory> / </directory> : tutto

Passaggio 4

Fare clic con il pulsante destro del mouse sul progetto CrunchifyMavenBuildPlugins => Run As => Maven build

Maven clic destro e build pulita - Crunchify
  • Fornire obiettivi come clean assembly:assembly
  • Fare clic su Apply
  • Fare clic su Run
Crea l'assieme usando il comando di build di eclipse

Passaggio 5

Dovresti vedere il messaggio BUILD SUCCESS sulla console.

Passaggio 6

NOTE: non è necessario eseguire questo passaggio.

tarLongFileMode per descrittore di distribuzione Maven - plug-in di assemblaggio Maven

Ricevi questo errore? Se viene visualizzato questo messaggio di errore durante la creazione dell'assieme, è necessario aggiungere la riga seguente al file pom.xml.

Ho ottenuto un errore superiore al mio primo tentativo. Quindi ho già aggiunto tarLongFileMode al file pom.xml sopra.

Passaggio 7

Ora how to verify ? Vai alla cartella di target del tuo progetto ed esegui il comando seguente per vedere il contenuto del tuo .tag.gz file contents .

bash-3.2$ tar zxvf CrunchifyMavenBuildPlugins-0.0.1-SNAPSHOT-bundle.tar.gz

plug-in di assemblaggio Maven - verifica il risultato - crunchify

Fammi sapere se hai qualche domanda e se dovessi riscontrare problemi durante l'esecuzione di questo.