- Leren door doen
- Trainers met praktijkervaring
- Klassikale trainingen
- Gedetailleerd cursusmateriaal
- Duidelijke inhoudsbeschrijving
- Maatwerk inhoud mogelijk
- Trainingen die doorgaan
- Kleine groepen
In de cursus Maven Development van SpiralTrain leren de deelnemers de vaardigheden en kennis die nodig is om Maven te gebruiken als een geautomatiseerd build en dependency management tool. Maven is een essentieel hulpmiddel in de Java-ontwikkelingswereld, dat helpt bij het beheren van projectafhankelijkheden en het automatiseren van het buildproces. De inhoud van de cursus sluit aan bij de meest recente versie van Maven.
In de cursus Maven Development leer je alles over het gebruik van Maven voor project- en dependency management. Deze cursus biedt een diepgaand inzicht in de werking van Maven en de rol van Maven repositories. Je ontdekt hoe Maven zich verhoudt tot het bekende build tool Ant, wat cruciaal is voor ontwikkelaars die efficiënt willen werken.
Vervolgens wordt de directory structuur van Maven projecten en de standaard life cycle besproken. Maven projecten kunnen gecreëerd worden aan de hand van voorgedefinieerde archetypes, waarbij vanaf de start al een bepaalde projectstructuur ingebakken zit. Ook wordt de rol van Maven goals en plugins besproken om je workflow te optimaliseren.
Een belangrijk onderdeel van de cursus Maven Development is het Project Object Model (POM), dat wordt gedefinieerd in pom.xml. We behandelen de betekenis van de voornaamste entries zoals Group, Artifact en Version. Daarnaast gaan we dieper in op complexere structuren met meerdere pom-bestanden en pom inheritance.
Onderdeel van het programma van de cursus Maven Development zijn ook de Maven Archetypes. Aan een aantal veelgebruikte archetypes wordt aandacht besteed. Tevens bespreken we hoe je met de Maven Archetype plugin zelf archetypes kunt maken die voorzien zijn van een prototype POM en prototype files.
Voorts wordt ingegaan op Maven Repositories, met een focus op de Maven Central repository, Enterprise Repositories, de Local Developer Repository en Remote Repositories. We bespreken de volgorde waarin Maven de repositories doorzoekt en aandacht voor Plugin Repositories komt ook aan bod.
Tenslotte besteden we aandacht aan de rol van Maven bij het uitvoeren van tests, continuous integration en release management met tools zoals Bamboo, Team City of Jenkins. Deze aspecten zijn essentieel voor moderne softwareontwikkeling en verbeteren de efficiëntie van teams.
Voor meer informatie over het gebruik van Maven en gerelateerde tools, bezoek de officiële Maven website. Daarnaast kan de cursus Test Driven Development met JUnit je helpen bij het integreren van testprocessen in je ontwikkeltraject.
De cursus Maven Development is bestemd voor developers die Maven willen gebruiken voor dependency management en voor het automatisch bouwen en deployen van projecten.
Om aan de cursus Maven Development te kunnen deelnemen is kennis van en ervaring met Java en XML vereist.
De theorie wordt besproken aan de hand van presentatie slides en wordt afgewisseld met oefeningen. Demo projecten in Maven dienen te verheldering van de behandelde concepten. De cursus gaat in op Maven versie 3. De cursustijden zijn van 9.30 tot 16.30.
De deelnemers krijgen na het goed doorlopen van de cursus een officieel certificaat Maven Development.
Module 1 : Maven Intro |
Module 2 : Core Concepts |
Module 3 : Build Lifecycle |
|
Java Build Tools Intro Desired Features Ant + Ivy Build.xml Build File with Ivy Ivy Dependency Management Maven Build Lifecycle pom.xml Gradle Results Matrix Tools Comparison |
What is Maven? Why Maven? Convention over Configuration Maven Directory Structure Project Object Model Maven Project Coordinates POM Structure POM Sections Plugins Archetypes Catalog File Dependencies |
What is Build Lifecycle? Standard Lifecycles Key Lifecycle Phases Build Phases and Goals Clean Lifecycle Default or Built Lifecycle Default Lifecycle Phases Site Generation and Reporting Site Lifecycle Site Website Customizing the Lifecycle Package-specific Lifecycles |
Module 4 : Profiles |
Module 5 : Plugins and Goals |
Module 6 : Archetypes |
|
Environment variables User-defined properties Filtering Resources Build Profiles What is a Build Profile? Project Configuration with Profiles Profile Activation Explicit Profile Activation Activation via Maven Settings Activation via Environment Variables Activation via Operating System Activation via Files |
What are Maven Plugins? Plugin Types Goals and Plugins Key Plugin Concepts Maven Antrun Plugin Maven Compiler Plugin Exec Maven Plugin Jetty Maven Plugin Eclipse Maven Integration Maven Checkstyle Plugin Findbugs Maven Plugin Maven PMD Plugin |
What is an Archetype? Different Archetypes Archetype Generate Command Maven Archetype Archetype Maven Archetype WebApp Simple J2EE Project Maven Archetype Simple Site Creating Archetypes Maven Archetype Plugin Archetype Descriptor Prototype POM Prototype Files |
Module 7 : Repositories |
Module 8 : Dependency Management |
Module 9 : Build Automation |
|
What is a Maven Repository? Enterprise Repositories Local Repository Central Repository Repositories in Super POM Remote Repository Maven Search Sequence Plugin Repositories Repository Management Deploying to Nexus with Maven Performing a Staged Release |
What is Dependency Management? Searching Dependencies Transitive Dependencies Dependency Terminology Dependency Scope Optional Dependencies Version Ranges Project Versions Visualizing Dependencies Dependency Conflicts Excluding Transitive Dependencies |
Handling Rapid Changes What is a Snapshot? Snapshot Dependency Build Automation Using Snapshots Release Management The Maven Release Plugin Developer Release Workflow Integration with Source Control Continuous Integration Deployment Automation |