Introduction |
What is Maven, Build Lifecycle, Maven vs Ant/Gradle |
✅ |
✅ |
❌ |
❌ |
Installation & Setup |
Install Maven, Configure PATH, Settings.xml |
✅ |
✅ |
❌ |
❌ |
Maven Project Basics |
POM.xml structure, GroupId, ArtifactId, Version (GAV) |
✅ |
✅ |
❌ |
❌ |
Build Lifecycle |
Clean, Default, Site lifecycle phases |
✅ |
✅ |
❌ |
❌ |
Dependencies |
Dependency scope, Transitive dependencies, Dependency management |
✅ |
✅ |
✅ |
❌ |
Repositories |
Local repo, Remote repo, Central repo, Mirror settings |
✅ |
✅ |
✅ |
❌ |
Plugins & Goals |
Maven Compiler plugin, Surefire plugin, Assembly plugin |
✅ |
✅ |
✅ |
❌ |
Build Profiles |
Profile activation, Environment-based builds, Conditional builds |
❌ |
✅ |
✅ |
✅ |
Multi-Module Projects |
Parent POM, Module inheritance, Aggregation |
❌ |
✅ |
✅ |
✅ |
Maven Properties |
User-defined properties, Built-in properties, Property interpolation |
❌ |
✅ |
✅ |
✅ |
Maven Archetypes |
Creating projects from archetypes, Custom archetypes |
✅ |
✅ |
✅ |
❌ |
Maven Goals & Phases |
Custom goals, Binding plugins to phases |
✅ |
✅ |
✅ |
❌ |
Testing with Maven |
JUnit/TestNG integration, Surefire plugin, Failsafe plugin |
✅ |
✅ |
✅ |
❌ |
Maven & CI/CD |
Integrating with Jenkins, GitHub Actions, GitLab CI |
❌ |
✅ |
✅ |
✅ |
Advanced Dependency Mgmt |
Dependency mediation, Exclusions, Dependency convergence |
❌ |
✅ |
✅ |
✅ |
Maven Wrapper |
mvnw usage, Wrapper configuration for projects |
✅ |
✅ |
✅ |
❌ |
Performance Optimization |
Parallel builds, Dependency caching, Offline builds |
❌ |
❌ |
✅ |
✅ |
Custom Plugins |
Writing Maven plugins, Extending lifecycle |
❌ |
❌ |
✅ |
✅ |
Maven in Enterprise |
Corporate repositories (Nexus/Artifactory), Governance |
❌ |
❌ |
✅ |
✅ |
Maven Best Practices |
Versioning strategy, Dependency minimization, Reproducible builds |
❌ |
❌ |
✅ |
✅ |
Troubleshooting & Debugging |
Maven debug mode (-X ), Effective POM, Dependency tree (mvn dependency:tree ) |
✅ |
✅ |
✅ |
✅ |