Maven (sda)
Da Sinapsi.
Vi ricordate ancora i tempi in cui per iniziare un progetto bisognava girare mezza internet alla ricerca dei vari jar da utilizzare e poi scrivere tre pagine di xml per insegnare ogni volta alla stupida formica che per compilare i sorgenti java deve usare javac?
Contents |
Abstract
Maven (sito ufficiale) è un sistema per la gestione del ciclo di vita dei progetti (principalmente java) che, al contrario del più diffuso (e vecchio) Ant e del venerabile make, prende con decisione le distanze dall'adagio "fare il build di un progetto è sostanzialmente un processo batch".
Maven infatti pretende solo che gli si descriva come è fatto un progetto (in termini di dove trovare i sorgenti e di quali siano le sue dipendenze); dopo gli si può chiedere di fare delle cose su quel progetto - senza spiegargli come' si fa a fare quelle cose.
Oltre a questo peculiare approccio al "problema" del build del progetto, Maven si differenzia dagli altri tool anche nel genere di problemi che si pone di risolvere: mentre con Ant si finisce spesso per avere uno script che crea un jar/war/ear/quellocheè, genera dei javadoc e magari fa il deploy dell'applicazione, Maven vuole gestire tutto il ciclo di vita dell'applicazione: dalla creazione del progetto (vuoto), all'andarsi a cercare su internet le librerie che il progetto utilizzerà, al build vero e proprio e fino alla distribuzione dell'artefatto finale e il tagging sull'SCM di turno dell'avvenuta release.
Programma SDA
Prima parte: Maven evangelism
(a cura di Mimmo - durata indicativa 2h)
L'intervento ripropone la medesima presentazione che Mimmo ha proposto alla Direzione dei Sistemi Informativi di Banca Intesa per risolvere i problema del build delle loro applicazioni più importanti (p.e. Sportello e Internet Banking) nel contesto del processo di certificazione della qualità del software richiesta dalla Banca D'Italia.
La presentazione si divide in quattro sezioni:
- Il problema del Build in ambiente J2EE
- Il contesto dei Sistemi Informativi di Banca Intesa
- Introduzione a maven2
- Q&A
Le sezioni di demo di maven2 e la successiva sezione di Q&A non vengono proposte in quanto Giorgio terrà una sessione pratica la prossima settimana.
Seconda parte: Hands on maven
(a cura di Giorgio - durata indicativa 2h)
- Maven da zero: il pom di un progetto minimale
- Dipendenze e transitività
- Pom-padre e moduli: ereditarietà e aggregazione
- Maven in Magnolia
Vedere anche
- il sito ufficiale di maven
- il libro Maven: A Developer's Notebook
- il libro Better builds with Maven
