Maîtrisez la création de releases maven. Comprenez le plugin release et en particulier les 2 goals : release:prepare et release:perform. Analysez la gestion des version des livrables et la synchronisation avec l’outil de gestion des sources.
Ce tutoriel est un extrait de séances pratiques de la formation MAVEN dispensée par Objis.
Les + objis
70% de travaux pratiques
Clé USB avec tous les outils utilisés + Corrigés TPs
Bilan pédagogique individuel + conseils
Nos tutoriaux pour vous initier
Liens utiles
[Page officielle dépendances Maven->http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html
]
Prérequis, outils et versions
Tutoriel Maven N°1 : Installation Maven
Objectifs
Comprendre la création de release avec Maven via plugin ‘release’
Préparer la création de releases
Créer un profil spécifique pour la release
Liens utiles
+ de 100 tutoriaux java/jee Objis
Tutoriaux et formation MAVEN
Formation Git + Maven + Nexus + Jenkins + Sonar avec Objis
Programme
Contexte
Partie 1 : preparation subversion
Partie 2 : préparer la release (release:prepare)
Partie 3 : réaliser la release (release:perform)
Durée
30min
Contexte
Vous souhaitez créer une release de votre projet Maven.
Maven considère que seuls les projets dont la version courante possède pas le mot ‘SNAPSHOT’ est candidat à une release.
Nous allons utiliser l’un après l’autre les commandes suivantes :
— mvn release:prepare
— mvn release:perform
Partie 1 : préparer Subversion
Assurez-vous d’avoir créé un répertoire ‘tags’ qui permettra à Maven de créer Tags associés à version de la release
svn import tags –username objis –password objis svn://localhost/objis-repos/demomaven/tags -m « Tags initial »
Partie 2 : préparer la release
IMPORTANT : vous devez synchroniser le code en local avec le code sur le serveur :
C:formationmavendevMAVEN-SCMcheckoutmonapplimonappli-dao>mvn -e scm:checkin -Dusername=objis -Dpassword=java -Dmessa
ge= »MAJ »
La phase de ‘préparation’, réalisée via mvn release:prepare, est longue et complexe. Maven y réalise de nombreuses opérations dont :
>check-poms : vérifie les POMs du projet pour voir si elles sont dans bon état pour release. Par exemple, erreur générée si la version du projet n’a pas de ‘SNAPSHOT’. En effet Maven va considérer que c’est déja une release.
>scm-check-modifications : vérifie cohérence entre code local et code sur SCM , afin de ne pas faire de release inconsistente avec SCM
>check-dependency-snapshots : vérifie qu’il n’ya aucune version de dépendance avec SNAPSHOT
>create-backup-poms : crée un fichier de backup du POM (fichier sera supprimé suite à release:perform)
Notez la création des fichiers suivants :
— pom.xml.releaseBackup : un backup du pom.xml , ainsi que celle d
— release.properties : propriétés de la release
Analysez également le contenu du répertoire tags sur svn :
Partie 3 : lancer la release
Si la préparation s’est bien passée, alors lancez mvn release:perform
Cette phase est moins complexe que la précédente et consiste essentiellement en 3 opérations :
— > verify-completed-prepare-phase : valide que release:prepar s’est bien passé.
— > checkout-project-from-scm : récupération de la version taggée dans scm
— > run-perform-goals : déploie la release dans les releases du RepoManager
Conclusion
Dans ce tutoriel, vous avez découvert la création de releases avec Maven.