dimanche 25 mars 2012

Maven 2

Maven 2

est équivallent à la procédure de build management (produire un logiciel à partir de ses sources en automatisant certaines tâches)
Il gère aussi les dépendances (external jar).

Nomenklatura
artefact: élément spécifique de la construction du projet (en général des jar) mais ça peut -être des war, des ear, ...
dépendance: c'est une dépendance du projet vers un artefact
snapshot : version du projet en cours de développement.
POM : Project Object Model : paradigme qui décrit le projet logiciel, ses dépendances et l'ordre des tâches à effectuer pour le produire. Basé sur XML (pom.xml) mais un peu plus simple qu'ANT.

Ils fonctionnent en réseau, peut télécharger des jar venant de répository connus et gère aussi les dépendances récursives.

Le fichier POM.xml contient les propriétés du projet parent, il est possible de redéfinir ces propriétés (héritage).

Convention de répertoire MAVEN
/src
/src/main
/src/main/java
/src/main/resources (images, fichiers, annexe, ...)
/src/main/webapp

/src/test
/src/test/java
/src/test/resources

/src/site : information relative au projet généré
/src/target : executables, jar, ...

Cycle de vie

compile
test
package (crée le jar dans target)
install
deploy

Ces opérations sont des opérations basiques de building, et fonctionnent sous forme de plugins que l'on peut ajouter dans le project object model. On est donc pas figé à ces seules étapes du cycle de vie.

Limitations
Certains artefacts ont des license agreement et ne sont donc pas directement résolvable par maven.
Ex: javax.naming.jndi

Référence
http://java.developpez.com/faq/maven/?page=terminologie

Aucun commentaire:

Enregistrer un commentaire