what are pom
Ce didacticiel explique ce que sont POM (Project Object Model) et pom.xml dans Maven avec l'exemple pom.xml. Nous verrons également comment configurer l'environnement Maven:
Nous explorerons comment configurer un environnement Maven, ainsi que l'installation et le projet mis en place dans Maven, et les détails sur un modèle d'objet de projet (POM).
=> Jetez un œil au guide du débutant Maven ici.
Ce que vous apprendrez:
Environnement Maven et configuration du projet
La configuration de Maven Environment est déjà décrite en détail sur la page suivante.
=> Environnement mis en place pour Maven
Étapes de Maven pour construire un projet
Un projet peut être configuré dans Maven en utilisant n'importe quel IDE comme Eclipse et également à partir de l'invite de commande.
Comment créer un projet dans Eclipse IDE a été discuté en détail sur la page ci-dessous.
=> Configuration du projet Maven
Ici, nous allons voir comment construire un projet Maven à partir de l'invite de commande.
#1) Afin de créer un projet, la première commande à utiliser est donnée ci-dessous.
mvn archetype: generate
archetype: generate est utilisé pour créer un nouveau projet à partir de l'archétype.
#deux) Après cela, nous devons fournir groupId, artifactId, modèle à utiliser dans le projet, suivi du mode interactif du projet.
La commande à utiliser est:
mvn archetype:generate -DgroupId=testing -DartifactId=Test -DarchetypeArtifactId= maven-archetype-quickstart -DinteractiveMode=false
Veuillez noter, -RÉ est utilisé pour passer le paramètre. DarchetypeArtifactId est le paramètre utilisé pour spécifier le modèle du projet à gérer. Par exemple, Ici démarrage rapide est généralement utilisé pour générer des projets de test couramment.
De même, il existe de nombreux types de modèles disponibles pour définir des projets dans Maven. Enfin, nous avons le interactiveMode où deux valeurs peuvent être définies comme false et true.
Ici, groupId essai est le nom du projet, artifactId Test est le nom du sous-projet.
La construction progresse et si elle réussit, un projet Maven sera créé avec des informations sur le temps nécessaire pour terminer la construction, l'horodatage de l'achèvement de la construction et l'allocation de mémoire.
# 3) Nous avons développé ce projet Maven à partir de l'invite de commande en dehors d'Eclipse. Pour importer le projet dans Eclipse, nous devons d'abord intégrer Maven à Eclipse. Tout d'abord, nous devons pointer vers l'emplacement du fichier pom.xml qui est généré dans le projet Maven que nous avons créé.
Ensuite, nous devons exécuter la commande suivante:
mvn eclipse: eclipse
Une fois cette commande exécutée, deux fichiers nommant .classpath et .projet sera généré dans le projet Maven que nous avons créé.
# 4) Tous les versions récentes d'Eclipse fournir les plugins Maven.
# 5) Pour vérifier si Maven est déjà présent sur votre Eclipse, accédez à Fenêtre => Préférences , ici Maven devrait être visible.
# 6) Au même endroit dans Eclipse, si nous développons le Maven , nous pouvons voir une option appelée Paramètres utilisateur . Ici, nous spécifions l'emplacement du référentiel local Maven où tous les Jars des projets sont téléchargés après la connexion du Maven à son propre référentiel.
Par défaut c'est .m2 dossier, cependant, s'il n'est pas défini, nous devons spécifier l'emplacement explicitement.
# 7) Nous devons maintenant importer le projet que nous avons créé dans Eclipse en suivant les étapes comme Fichier => Importer => Maven => Projet Maven existant . Continuez et nous aurons notre projet dans Eclipse avec le pom.xml.
Le projet doit avoir le squelette suivant:
- Dépendances de Maven
- src / main / java
- src / test / java
- src
- cible
- pom.xml
Nous devons conserver le fichier de classe dans le dossier src / test / java. Afin de développer le framework Java en Selenium ou Appium ou Rest Assured, nous devons ajouter les jars et les dépendances de Selenium en Java, Appium en Java et Rest Assured en Java au fichier pom.xml.
Conformément à l'algorithme Maven, le fichier de classe doit avoir un nom avec le Test ajouté au nom. Par exemple, le nom de la classe peut être SeleniumJavaTest.
# 8) Pour exécuter ce projet à partir de l'invite de commande, nous devons d'abord accédez au dossier du projet (emplacement du fichier pom. Xml). Le chemin du fichier pom peut être trouvé en faisant un clic droit dessus, puis accédez aux propriétés et copiez l'emplacement.
# 9) Maintenant, les commandes suivantes sont exécutées afin d'atteindre les objectifs spécifiques:
- mvn clean: Utilisé pour nettoyer les informations de construction précédentes ou les artefacts.
- mvn compile: Utilisé pour compiler du code et vérifier s'il y a des erreurs de syntaxe dans notre test. Si le résultat est un CONSTRUIRE LE SUCCÈS, alors cela signifie que nous n'avons aucune erreur de syntaxe dans notre code.
- test mvn: Utilisé pour déclencher l'exécution de notre projet de test. De plus, si nous sautons les commandes (nettoyer et compiler) et exécutons directement la commande de test, alors il doit d'abord effectuer le nettoyage et la compilation du code, puis exécuter et produire des résultats.
Avantages de la configuration de Maven Project à partir de l'invite de commande:
meilleure application de téléchargement de musique mp3 pour android
- Très utile si nous aimons configurer Maven avec des outils d'intégration continue comme Jenkins.
- Pas besoin d'ouvrir des IDE comme Eclipse pour exécuter et déclencher notre projet manuellement, il suffit de naviguer jusqu'à l'emplacement du fichier pom.
Maven POM (modèle d'objet de projet)
Le modèle d'objet de projet ou POM est la partie de base de la fonctionnalité Maven. Il s'agit d'un fichier XML contenant des informations sur les dépendances, les configurations et d'autres informations importantes sur le projet. Maven parcourt ces informations puis exécute la tâche désignée.
Ci-dessous la liste des informations que contient le fichier pom.xml:
- Dépendances du projet
- Plugins
- Objectifs du projet
- Profils
- Version
- Description du projet
- Liste de distribution
- Les développeurs
- Répertoire du dossier source
- Répertoire de construction
- Répertoire de la source de test
Qu'est-ce que Super POM?
Il existe une relation parent-enfant entre les fichiers POM d'un projet. Le fichier pom que nous avons développé pour notre projet spécifique hérite des propriétés du super pom.
Qu'est-ce qu'une configuration POM minimale?
La configuration minimale de pom fait référence au groupId, à artifactId et à la version définis pour notre projet. Il est facile et simple de décrire la configuration minimale du pom.
Vous trouverez ci-dessous un extrait de code pour une configuration minimale de pom.
1.0 com.TestProject MavenJavaProject 3.0
Dans le cas où aucune configuration minimale n'est définie, Maven récupérera les informations nécessaires dans le fichier super pom.xml.
Qu'est-ce que la configuration POM par défaut?
La configuration par défaut du pom dépend uniquement du archtype.Par exemple dans un projet Maven qui a un archtype de démarrage rapide, par défaut, un fichier pom est présenté ci-dessous.
3.8.0 KeywordFramework Excel 0.0.1-S org.apache.poi poi-ooxml 4.1.1 org.apache.poi poi 4.1.1
Comment la hiérarchie POM est-elle maintenue dans le projet Maven?
Le fichier pom que nous utilisons est une fusion du fichier pom du projet, du fichier super pom et du fichier pom parent (si présent). C'est ce qu'on appelle un fichier pom efficace .
Afin de générer un fichier pom efficace, accédez au dossier du projet et exécutez la commande suivante:
mvn help:effective-pom
Principales caractéristiques du fichier pom.xml dans Maven
- Nom: Comme son nom l'indique, il décrit le nom du projet. Il existe une différence entre le nom et artifactId. Alors que artifactId identifie un projet de manière unique et est considéré comme une étape de base. Le nom est juste un nom lisible et n'est pas considéré comme une étape obligatoire pour identifier un projet dans Maven.
- URL: Ceci décrit l'url du projet. Semblable au nom, l'url n'est pas une balise obligatoire. Il fournit principalement des données supplémentaires sur le projet.
- Emballage: Cela détaille le type de paquet sous forme de bocaux ou de guerre.
- Dépendances: Ils décrivent les dépendances du projet. Chaque dépendance fait partie de la balise dependencies. La balise Dependencies contient plusieurs dépendances.
- Dépendance: Ils décrivent les informations de dépendance individuelles telles que le groupId, l'artefactId et la version.
- Portée: Ils décrivent la périphérie du projet. Il peut avoir les valeurs suivantes comme import, system, test, runtime, provided et compile.
- Projet: Il s'agit de la balise racine du fichier pom.xml.
- Version du modèle: Ceci fait partie de la balise du projet. Il définit la version du modèle et pour Maven 2 et 3, sa valeur est fixée à 4.0.0.
Exemple POM.XML
Vous trouverez ci-dessous un exemple de code xml avec les fonctionnalités POM ci-dessus:
3.7.0 com.softwarehelp Selenium Maven 1.0- S war Maven Tutorial Series http://maven.apacheseries.org org.apache.poi poi 4.1.1
Les autres fonctionnalités clés du fichier pom.xml telles que groupId, artifactId et version ont été expliquées en détail dans le didacticiel d'introduction sur Maven.
Conclusion
Nous espérons que la plupart de vos doutes sur la façon de configurer l'environnement pour Maven, comment créer un projet sur Maven à la fois à partir d'Eclipse et à partir de l'invite de commande devraient être clairs maintenant.
Ce didacticiel a également expliqué en détail ce qu'est POM et les fonctionnalités du fichier pom.xml avec des exemples. Maven est un outil de construction très utile qui a vraiment rendu la tâche des développeurs, des testeurs et des autres personnes impliquées facile et simple.
Dans le prochain tutoriel, nous discuterons de la différence entre Gradle & Maven, les plugins et d'autres sujets connexes .
=> Cliquez ici pour voir les didacticiels de formation A-Z de Maven.
lecture recommandée
- Qu'est-ce que Maven - Tutoriel Maven pour les débutants
- Configuration de Maven avec Eclipse Java IDE
- Intégration de Maven avec TestNg à l'aide du plug-in Maven Surefire
- Gatling Script & Créer un projet Gatling à l'aide de l'archétype Maven
- 31 questions et réponses les plus fréquemment posées lors des entretiens avec Maven
- Dépendance et intégration Maven avec Eclipse et TestNG
- Documentation Maven avec Jenkins & Maven pour les projets
- Gradle Vs Maven et Plugins Maven