Archivi categoria: MAVEN

La categoria contiene una serie di articoli dedicati a Maven, il gestore di progetti della comunity Apache

MAVEN TUTORIAL – 1 – CONFIGURAZIONE MINIMA

Oggi vediamo più in dettaglio il cuore di Maven, ovvero quel POM file che descrive il progetto nella sua completezza. POM è l’acronimo di “Project Object Model”. Si tratta di una rappresentazione XML di un progetto Maven descritta in un file chiamato pom.xml.

Cominciamo ad analizzare la configurazione minima del pom file.

Come ogni buon file xml che si rispetti è presente uno schema xsd che stabilisce le regole del file. Lo schema è arrivato alla versione 4.0.0.

I campi groupId, artifactId version identificano univocamente il progetto, agendo da sistema di coordinate.

Il campo groupId individua univocamente un’organizzazione o un progetto. Può assumere qualsiasi valore, ma è buona prassi valorizzarla usando la dot-notation. In tal modo rilasciando il gruppo su un repository, i punti vengono sostituiti con i separatori di directory OS specifici. Nell’esempio riportato il gruppo it.finazzo.progetti >è presente nella directory $M2_REPO/it/finazzo/progetti.

Il campo artifactId individua univocamente il progetto all’interno dell’organizzazione. Di norma coincide con il nome del progetto. Nell’esempio riportato il progetto è presente nella directory $M2_REPO/it/finazzo/progetti/singolo

Il campo version individua la versione del progetto. Nell’esempio riportato il progetto$M2_REPO/it/finazzo/progetti/singolo/1.0.

Il campo packaging individua il formato del package prodotto. Se non è definito il sistema assume jar.

MAVEN TUTORIAL – INTRODUZIONE

Maven è uno strumento completo per la gestione di progetti software Java.

Segue tutte le fasi del progetto in termini di compilazione del codice, distribuzione, documentazione e collaborazione del team di sviluppo, applicando pattern ben collaudati.

Definisce un ciclo di vita standard per il building, il test e il deployment di file di distribuzione Java. Inoltre presenta una serie di plugin per gli aspetti legati alla documentazione e alla reportistica.

Maven descrive il singolo progetto attraverso un file POM (Project Object Model). Il file POM è un file xml che definisce in modo chiaro l’identità e la struttura di un progetto.  E’ diviso in cinque parti:

  1. Relazioni tra POM. In questa sezione è possibile organizzare i progetti attraverso una serie di file POM opportunamente relazionati.
  2. Build settings. In questa sezione sono definite le varie informazioni richieste dal processo di build.
  3. Project information. In questa sezione sono definite le ingformazioni generali del progetto.
  4. Build environment. Questa sezione contiene le varie informazioni relative all’ambiente di build.
  5. Maven environment. Questa sezione contiene i dati per la configurazione dell’ambiente Maven, ad esempio i vari repository cui si appoggi Maven.

Nel momento in cui scrivo Maven ha raggiunto la versione 2.2.1. E’ presente anche una versione 2.0.11, versione stabile che supporta la JDK 1.4.

Aggiornamento al 17/06. Maven ha raggiunto la versione 3.2.1