what are pom
Deze tutorial legt uit wat POM (Project Object Model) en pom.xml in Maven zijn, samen met pom.xml Voorbeeld. We zullen ook zien hoe u Maven Environment instelt:
We zullen onderzoeken hoe een Maven-omgeving kan worden opgezet, samen met installatie en projectopstelling in Maven, en de details van een Project Object Model (POM).
Bekijk hier de Maven Beginners Guide.
Wat je leert:
test mijn site in verschillende browsers
Maven-omgeving en projectopstelling
Het instellen van de Maven-omgeving wordt op de volgende pagina al in detail besproken.
Omgeving ingesteld voor Maven
Maven Stappen om een project te bouwen
Een project kan in Maven worden opgezet met elke IDE zoals Eclipse en ook vanaf de opdrachtprompt.
Hoe je een project bouwt in Eclipse IDE is in detail besproken op de onderstaande pagina.
Hier zullen we zien hoe we een Maven-project kunnen bouwen vanaf de opdrachtprompt.
# 1) Om een project aan te maken, wordt het eerste te gebruiken commando hieronder gegeven.
archetype: genereren wordt gebruikt voor het maken van een nieuw project vanuit het archetype.
#twee) Hierna moeten we groupId, artifactId, sjabloon opgeven om in het project te gebruiken, gevolgd door de interactieve modus van het project.
Het te gebruiken commando is:
Houd er rekening mee dat, -D wordt gebruikt om parameter door te geven. DarchetypeArtifactId is de parameter die wordt gebruikt om de sjabloon van het project te specificeren dat moet worden onderhouden. Bijvoorbeeld, hier snelle start wordt doorgaans gebruikt om testprojecten te genereren.
Evenzo zijn er veel soorten sjablonen beschikbaar om projecten in Maven te definiëren. Ten slotte hebben we de interactiveMode waar twee waarden kunnen worden ingesteld als false en true.
Hier, groupId testen is de naam van het project, artefactId Test is de naam van het deelproject.
De build vordert en als het een succes is, wordt een Maven-project gemaakt met informatie over de tijd die nodig is om de build te voltooien, het tijdstempel van de voltooiing van de build en de geheugentoewijzing.
# 3) We hebben dit Maven-project ontwikkeld vanaf de opdrachtprompt buiten Eclipse. Om het project in Eclipse te importeren, moeten we eerst Maven met Eclipse integreren. Eerst moeten we verwijzen naar de locatie van het pom.xml-bestand dat wordt gegenereerd in het Maven-project dat we hebben gemaakt.
Dan moeten we de volgende opdracht uitvoeren:
Zodra deze opdracht is uitgevoerd, worden twee bestanden een naam gegeven .classpath en .project wordt gegenereerd in het Maven-project dat we hebben gemaakt.
# 4) Al de recente versies van Eclipse bieden de Maven-plug-ins.
# 5) Om te controleren of Maven al aanwezig is op uw Eclipse, navigeert u naar Window => Voorkeuren , hier zou Maven zichtbaar moeten zijn.
# 6) Op dezelfde locatie in Eclipse, als we het Maven zien we een optie genaamd Gebruikersinstellingen Hier specificeren we de locatie van de lokale Maven-repository waar alle Jars voor de projecten worden gedownload nadat de Maven verbinding heeft gemaakt met zijn eigen repository.
Standaard is het .m2 map, maar als deze niet is ingesteld, moeten we de locatie expliciet specificeren.
# 7) Nu moeten we het project dat we hebben gemaakt naar Eclipse importeren door de stappen te volgen als Bestand => Import => Maven => Bestaand Maven-project Ga verder en we hebben ons project in Eclipse samen met de pom.xml.
Het project heeft het volgende skelet:
- Afhankelijkheden van Maven
- src / main / java
- src / test / java
- src
- doelwit
- pom.xml
We moeten het class-bestand in de map src / test / java houden. Om een Java-framework te ontwikkelen in Selenium of Appium of Wees gerust, moeten we de potten en afhankelijkheden van het Selenium in Java, Appium in Java en Rest Assured in Java aan het pom.xml-bestand toevoegen.
Volgens het Maven-algoritme moet het klassenbestand een naam hebben met de Test toegevoegd aan de naam. Bijvoorbeeld, de klassenaam kan zijn SeleniumJavaTest.
# 8) Om dit project vanaf de opdrachtprompt uit te voeren, moeten we eerst navigeer naar de projectmap (locatie van het pom. Xml-bestand). Het pad van het pom-bestand kan worden gevonden door er met de rechtermuisknop op te klikken, vervolgens naar eigenschappen te navigeren en de locatie te kopiëren.
# 9) Nu worden de volgende opdrachten uitgevoerd om de specifieke doeleinden te bereiken:
- mvn schoon: Wordt gebruikt om de vorige build-informatie of artefacten op te schonen.
- mvn compileren: Wordt gebruikt om code te compileren en te controleren of er syntaxisfouten zijn in onze test. Als het resultaat een BOUW SUCCES, dan betekent het dat we geen fout hebben in de syntaxis in onze code.
- mvn-test: Wordt gebruikt om de uitvoering van ons testproject te activeren. Bovendien, als we de commando's overslaan (opschonen en compileren) en direct het testcommando uitvoeren, dan zal het ook eerst de code opschonen en compileren, dan uitvoeren en resultaten produceren.
Voordelen van het instellen van Maven Project vanaf de opdrachtprompt:
kan eclipse draaien c ++
- Erg handig als we Maven willen configureren met Continuous Integration-tools zoals Jenkins.
- U hoeft IDE's zoals Eclipse niet te openen om ons project handmatig uit te voeren en te activeren, u hoeft alleen maar naar de locatie van het pom-bestand te navigeren.
Maven POM (Project Object Model)
Project Object Model of POM is het basisonderdeel van de Maven-functionaliteit. Dit is een XML-bestand met informatie over de afhankelijkheden, configuraties en andere belangrijke informatie over het project. Maven neemt deze informatie door en voert vervolgens de aangewezen taak uit.
Hieronder is de lijst met informatie die het pom.xml-bestand bevat:
- Projectafhankelijkheden
- Plug-ins
- Doelen voor het project
- Profielen
- Versie
- Beschrijving van het project
- Distributie lijst
- Ontwikkelaars
- Directory van de bronmap
- Directory van build
- Directory van de testbron
Wat is Super POM?
Er is een ouder-kindrelatie tussen de POM-bestanden in een project. Het pom-bestand dat we voor ons specifieke project hebben ontwikkeld, erft de eigenschappen van de super pom.
Wat is een minimale POM-configuratie?
De minimale pom-configuratie verwijst naar de groupId, artifactId en de versie die voor ons project zijn gedefinieerd. Het is gemakkelijk en eenvoudig om de minimale pom-configuratie te beschrijven.
Hieronder is een codefragment voor een minimale pom-configuratie.
Als er geen minimale configuraties zijn gedefinieerd, haalt Maven de benodigde informatie op uit het super pom.xml-bestand.
Wat is de standaard POM-configuratie?
De standaard pom-configuratie is uitsluitend afhankelijk van het archtype.Bijvoorbeeld in een Maven-project met een quickstart-archtype, heeft standaard een pom-bestand dat hieronder wordt weergegeven.
Hoe wordt de POM-hiërarchie gehandhaafd in het Maven-project?
Het pom-bestand dat we gebruiken is een fusie van het pom-bestand van het project, super pom-bestand en ouder pom-bestand (indien aanwezig). Dit heet een effectief pom-bestand
Om een effectief pom-bestand te genereren, navigeert u naar de projectmap en voert u de volgende opdracht uit:
Belangrijkste kenmerken van het pom.xml-bestand in Maven
- Naam: Zoals de naam doet vermoeden, beschrijft het de naam van het project. Er is een verschil tussen de naam en artefactId. Hoewel artefactId een project uniek identificeert en als een basisstap wordt beschouwd. Naam is slechts een leesbare naam en wordt niet beschouwd als een verplichte stap voor het identificeren van een project in Maven.
- URL: Dit beschrijft de url van het project. Net als de naam is url geen verplichte tag. Het biedt meestal aanvullende gegevens over het project.
- Verpakking: Dit geeft het pakkettype weer in de vorm van potten of oorlog.
- Afhankelijkheden: Ze beschrijven de afhankelijkheden van het project. Elke afhankelijkheid is een onderdeel van de afhankelijkheden-tag. Afhankelijkheden-tag bevat meerdere afhankelijkheden.
- Afhankelijkheid: Ze beschrijven individuele afhankelijkheidsinformatie, zoals de groupId, artifactId en version.
- Toepassingsgebied: Ze schetsen de periferie van het project. Het kan de volgende waarden hebben, zoals importeren, systeem, test, runtime, opgegeven en compileren.
- Project: Dit is de root-tag voor het pom.xml-bestand.
- Model versie: Dit is een onderdeel van de project-tag. Het definieert de modelversie en voor Maven 2 en 3 is de waarde ingesteld op 4.0.0.
POM.XML-voorbeeld
Hieronder vindt u een voorbeeld van een XML-code met de bovenstaande POM-functies:
De andere belangrijke functies van het pom.xml-bestand, zoals groupId, artifactId en version, zijn in detail uitgelegd in de inleidende tutorial over Maven.
Gevolgtrekking
We hopen dat de meeste van uw twijfels over hoe u de omgeving moet doen die is ingesteld voor Maven, hoe u een project op Maven kunt bouwen, zowel vanuit Eclipse als vanaf de opdrachtprompt, nu duidelijk zijn.
In deze tutorial werd ook gedetailleerd uitgelegd wat POM is en wat de kenmerken van het pom.xml-bestand zijn, samen met voorbeelden. Maven is een zeer nuttige bouwtool die de taak van ontwikkelaars, testers en andere betrokkenen echt gemakkelijk en eenvoudig heeft gemaakt.
In de volgende tutorial zullen we het verschil bespreken tussen Gradle & Maven, plug-ins en andere gerelateerde onderwerpen
Kijk hier om AZ van Maven-trainingshandleidingen te zien.
Aanbevolen literatuur
- Wat is Maven - Maven-zelfstudie voor beginners
- Maven configureren met Eclipse Java IDE
- Integratie van Maven met TestNg met behulp van de Maven Surefire-plug-in
- Gatling-script & maak een Gatling-project met behulp van Maven Archetype
- 31 Meest gestelde vragen en antwoorden over Maven-interviews
- Afhankelijkheid en integratie van Maven met Eclipse en TestNG
- Maven met Jenkins & Maven-documentatie voor projecten
- Gradle Vs Maven en Maven-plug-ins