Projets
Pages enfant
  • 1.4 Création d'un projet à partir d'un archetype blank

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.
Commentaire: Migrated to Confluence 5.3
Astuce
titleBon pour relecture
 

...

Sommaire :

Sommaire
maxLevel3

...

Création de la structure du projet à partir de

...

l’archetype esup-commons

Qu'est-ce qu'un archetype Maven ? Dans le contexte de esup-commons, un archetype est une structure complète d'un projet à déployer. Toute l'organisation des fichiers, des classes et des projets Eclipse sera mise en place par l'archetype. L'objectif est de proposer une structure standard à tous les développeurs. Le développeur aura "uniquement" à sa charge le remplissage de cette structure.

La structure du projet va être construite à partir d'un d’un archétype maven dont voici les paramètres :

archetypeRepository=https://mvn.esup-portail.org/content/repositories/releases

archetypeGroupId=org.esupportail.blank

archetypeArtifactId=esup-blank-archetype

archetypeVersion=numeroVersionArchetype

groupId=org.esupportaildomaineMonProjet

artifactId=nomProjet

package=packageMonProjet

version=numeroVersionMonProjet

...

  • numeroVersionArchetype : numéro de version de l'archetype à utiliser (version 0.2.8 à l'heure où sont écrites ces lignes). Pour connaître le numéro de version de l'archetype, merci Merci de vous référer à cette page : Changelogau dêpot maven : https://mvn.esup-portail.org/content/repositories/releases/org/esupportail/blank/esup-blank-archetype/
  • domaineMonProjet : nom de domaine du projet à développer. Par exemple : fr.univ pour un projet local ou org.esup-portail pour un projet communautaire
  • nomProjet : nom de mon projet. Par exemple : portlet-reservation
  • packageMonProjet : nom du package JAVA correspondant à mon projet. Par exemple : fr.uhp.reservation
  • numeroVersionMonProjet : numéro de version de mon projet. Par exemple : 1.0-SNAPSHOT
  • les autres paramètres ne sont pas à modifier

 

HTML Comment
Remarque

En attendant qu'une version stable soit tagguée, vous pouvez récupérer la version en cours de développement (version 0.2.3-SNAPSHOT à l'heure où sont écrites ces lignes), en pensant à modifier l'URL du repository en https://mvn.esup-portail.org/content/repositories/snapshots

Nous allons prendre pour l'exemple la création du projet portlet-réservation.

Création depuis Eclipse

Se rendre dans le menu File => New => Project...
Choisir Maven Project
Image Removed
Laisser l'emplacement par défaut pour le projet
Image Removed
Il n'y a pas d'archétype

Image Removed
Cliquer sur Add Archetype
Remplir les champs correspondant à l'archétype que l'on souhaite utiliser

Image Removed

Choisir l'archétype que l'on vient d'ajouter
Image Removed
Créer le projet

Image Removed

Avertissement

Au moment de la création de l'archetype, il faut absolument que groupId=org.esupportail.

Lorsque que vous mettez pour l'artifactId=portlet-reservation, Eclipse propose automatiquement un package en fonction de cet artifactUd : org.esupportail.portlet_reservation. On pourrait penser qu'il faut changer le groupId pour mettre un fr.uhp par exemple et avoir ensuite un package=fr.uhp.portlet_reservation.

En fait, non : le groupId et le package sont complètement dissociés. Il faut laisser groupId=org.esupportail et taper à la main (sans garder ce qu'Eclipse suggère par défaut) fr.uhp.reservation.

Cliquer sur finish et l'archetype est créé avec vos choix.

Image Removed

Pour préparer un projet, toutes les dépendances doivent être satisfaites. Chaque module Maven dépendant d'un autre, il faut donc compiler chaque module afin de générer les jar qui seront utilisés par les autres modules.C'est le but de la target Install de Maven.

Lancer la tache Maven via un clic droit sur le projet parent : Run as => Maven install

Voila le résultat dans la console de Eclipse ?:

Image Removed

...

 

Il y a 2 méthodes possible pour créer un nouveau projet eclipse à partir de l'archetype blank : Soit directement via l'interface d'Eclipse, soit en ligne de commande puis importation dans Ecplise.

Remarque
titleAttention

Nous avons constaté quelques soucis dans la création de projet à partir d'un archetype avec le plugin maven d'eclipse : m2eclipse. Si vous rencontrez des messages d'erreurs indiquant qu'eclipse ne parvient pas à trouver l'archetype (voir erreur ci-dessous) n'hésitez pas à relancer complètement Eclipe.

Image Added

Toutefois nous vous recommandons d'utiliser la méthode par ligne de commande qui elle fonctionne bien.

Création en ligne de commande

...

Bloc de code
mvn archetype:generate -B -DarchetypeRepository=https://mvn.esup-portail.org/content/repositories/releases
-DarchetypeGroupId=org.esupportail.blank -DarchetypeArtifactId=esup-blank-archetype -DarchetypeVersion=numeroVersionArchetype
-DgroupId=orgfr.esupportailuniv -DartifactId=nomProjet -Dpackage=packageMonProjet -Dversion=numeroVersionMonProjet

...

On valide en cliquant sur Finish.

Le projet est maintenant prêt à être utilisé.

Création depuis Eclipse

Se rendre dans le menu File => New => Project…
Choisir Maven Project
Image Added
Laisser l’emplacement par défaut pour le projet
Image Added
Il n’y a pas d’archétype

Image Added
Cliquer sur Add Archetype
Remplir les champs correspondant à l’archétype que l’on souhaite utiliser
Image Added

Choisir l’archétype que l’on vient d’ajouter

Image Added
Créer le projet
Image Added

 

Cliquer sur finish et le projet est créé avec vos choix.

Image Added

Pour préparer un projet, toutes les dépendances doivent être satisfaites. Chaque module Maven dépendant d'un autre, il faut donc compiler chaque module afin de générer les jar qui seront utilisés par les autres modules.C'est le but de la target Install de Maven.

Lancer la tache Maven via un clic droit sur le projet parent : Run as => Maven install

Voila le résultat dans la console de Eclipse :

Image Added

Le projet est maintenant prêt à être utilisé.

...

Une fois le projet prêt, vous pouvez supprimer les modules web qui ne vous intéressent pas. Pour rappel, dans cette page : 1.2 Méthodologie de développement, vous trouverez toutes les informations pour choisir le module web à garder. Ce n'est pas une obligation de supprimer les modules web que vous ne souhaitez pas utiliser, vous pouvez les garder pour un usage ultérieur. Ils ne poseront pas de problème dans votre travail de développement.

...