Archivi tag: archetipo

MAVEN TUTORIAL – 10 – GESTONE DEI MODULI

Nell’articolo di oggi vedremo una delle caratteristiche più interessanti di maven, ovvero quella di poter strutturare un progetto in moduli, componenti del progetto principale detto parent. In particolare definiremo un progetto composto da una interfaccia grafica realizzata in flex e un back-end che espone servizi soa basati su spring ws. Per le caratteristiche di spring-ws rimando alla sezione dedicata.

Iniziamo con il creare il progetto parent tramite la direttiva base

Adesso dobbiamo configurare i moduli all’interno del nostro progetto. Per farlo è sufficiente modificare il tag di packaging specificando pom al posto di jar e indicando i moduli tramite il tag modules.

Creiamo il progetto relativo al front-end realizzato in flex. In questo caso ci avvaliamo di flexmojos, un set di plugin realizzati da Sonatype per consentire in maven la compilazione, l’ottimizzazione e il testing di componenti flex. Mister Sonatype ha messo a disposizione una serie di archetipi per soddisfare le nostre esigenze: la creazione di una libreria, la creazione di una applicazione flex e la creazione di un progetto progetto suddiviso in moduli swc, swf e flex. Nel nostro caso ci avvaliamo del secondo archetipo e scegliamo la versione stable che è , nel momento in cui scrivo, la 3.9.

Generato il progetto occorre modificare il pom per includere il repository maven di Sonatype per consentire il download di tutti i componenti necessari alla compilazione. Potete includere il repository all’interno del pom file dello specifico progetto o nel file settings.xml per renderlo disponibile per tutti i progetti.

 

Infine specifichiamo il path del flash player stand alone per poter eseguire i test tramite la variabile flashPlayer.command

Creiamo il progetto del back-end realizzato in spring-ws 2.0. Usiamo la direttiva che abbiamo usato in uno dei precedenti articoli per generare il nostro back-end.

All’interno del progetto back-end specifichiamo la dipendenza dal progetto front-end tramite il tag dependencies

e includiamo il plugin flexmojos-maven-plugin responsabile di copiare gli swf generati nella root del nostro back-end.

Per verificare il corretto funzionamento lanciamo la direttiva mvn package sul progetto parent. I moduli verranno compilati e assemblati nell’ordine dichiarato, ottenenendo il seguente ouput:

Qui trovate i file necessari per fare il vostro progetto modulare.

MAVEN TUTORIAL – 9 – CREARE UN ARCHETIPO

Nell’articolo di oggi vedremo una delle funzioni più interessanti di Maven, ovvero la creazione di archetipi. La creazione di archetipi consente all’utente di creare progetti base da cui far partire gli sviluppi evitando le noiose fasi di configurazione, integrazione e i copia e incolla di sorgenti comuni.

L’uso di archetipi consente di definire dei progetti standard, la cui alberatura e le cui classi rispondono agli standard scelti, e che sono alla base deii progetti da essi derivati.

La generazione dell’archetipo si basa sulla direttiva archetype:create-from-project.

Tale direttiva genera l’archetipo basato sul progetto nella directory target/generated-sources/archetype.

Accediamo alla directory dell’archetipo e lanciamo la direttiva mvn:install.

Tale direttiva consente l’installazione dell’archetipo nel catalogo locale a disposizione per la creazione di altri progetti.

Per sfruttare l’archetipo appena generato creiamo una nuova directory e dopo esserci spostati al suo interno usiamo la seguente direttiva

mvn archetype:generate -DarchetypeCatalog=local

Tale direttiva consente attraverso una procedura guidata la creazione del nostro progetto basato sull’archetipo generato.

Il passo successivo è condividere il nostro archetipo su un repository maven all’interno della nostra azienda in modo da consentire a tutti gli utenti la creazione agevole di nuovi progetti.