Advanced Maven

Getting the Most out of Apache Maven

The Advanced Maven training course builds on the Working with Maven course and focuses on advanced Maven features and concepts.

Getting the Most out of Apache Maven begins with a quick review of Apache Maven. During the review, the course quickly touches key technological and architectural concepts (POM, project configuration, task execution, etc.), and then explores the current state of Maven and the changes that have taken place in Maven 3. Once the foundation has been laid, the course takes an in-depth dive into repository management, versioning, release management, and continuous integration.

The course concludes with a open-ended discussion on best-practices when using Maven on very large projects. If you're looking for a comprehensive Maven and CI course, consider combining the following courses into a 5-day boot camp: Working with Maven, Working with CI, and Test Driven Development

The Advanced Maven course assumes you have hands-on experience working with Maven.

Course Summary

Purpose: 
Learn the low level details of apache Maven.
Audience: 
Build engineers, DevOps engineers, and software engineers looking to take their Maven knowledge to the next step.
Skill Level: 
Learning Style: 

Hands-on training is customized, instructor-led training with an in-depth presentation of a technology and its concepts, featuring such topics as Java, OOAD, and Open Source.

Hands On help
Duration: 
2 Days
Productivity Objectives: 
  • Correctly write and configure the POM file
  • Transition from Maven 2 to Maven 3
  • Setup Maven jobs for a continuous integration server
  • Deploy to Nexus
  • Design custom skins and templates
Advanced Maven is part of the Apache Training curriculum.

What You'll Learn

In the Advanced Maven training course you’ll learn:

  • Review of Core Maven Concepts
    • POM
    • Project Configuration
    • Profiles
    • Dependencies, Dependency Management, and Transitive Dependencies
    • Moving From Maven 2 to Maven 3
  • Repository Management
    • What is an Enterprise Repository?
    • Nexus Repositories and Security
    • Deploying to Nexus with Maven
    • Managing Maven Settings with Nexus
    • Configuring Procurement in Nexus
    • Performing a Staged Release
  • Release Management
    • Release Management
    • The Maven Release Plugin
    • Developer Release Workflow
    • Integration with Source Control
    • Example Using Subversion
  • Maven Repositories and Versions
    • Declaring Repositories
    • Differences between mirrors and repositories
    • Differences between SNAPSHOT and releases
  • Maven Repositories and Versions using Multi-module projects
    • Setting up a multi-module project used by others in Nexus
    • Differences between SNAPSHOT and releases
    • Each project is each onto their own
  • Continuous Integration with Bamboo (or Jenkins)
    • What is Continuous Integration?
    • Benefits of Continuous Integration
    • Comparisons of CI Servers/Products
    • Setting Up a Maven Job in the CI server
    • Monitoring Builds
    • Demonstration of CI server
  • Maven Site Reporting
    • Using plugins to add additional reports
    • Creating content
    • Building a multimodule site
    • Selecting individual reports
    • Creating custom templates and skins
  • Best Practices
  • Q/A

Meet Your Instructor

Michael headshot
Michael

Michael is a practicing software developer, course developer, and trainer with DevelopIntelligence. For the majority of his career, Michael has designed and implemented large-scale, enterprise-grade, Java-based applications at major telecommunications and Internet companies, such as Level3 Communications, US West/Qwest/Century Link, Orbitz, and others.

Michael has a passion for learning new technologies, patterns, and paradigms (or, he has a tendency to get bored or disappointed with current ones)....

Meet Michael »
Daniel pic
Daniel

Daniel has been a self-employed developer, teacher and speaker for private businesses, education and government entities since 1999. Daniel also actively teaches programming for the University of New Mexico Continuing Education.

Daniel is a Pomodoro Technique practitioner, and co-founder of the Albuquerque Java User’s Group in Albuquerque, New Mexico. When he’s not supporting other local Java developers, Daniel spends most of his waking hours developing in and around the Java ecosystem, encompassing...

Meet Daniel »

Contact us to learn more

Not all training courses are created equal. Let the customization process begin! We'll work with you to design a custom Advanced Maven training course that meets your specific needs.

DevelopIntelligence has been in the technical/software development learning and training industry for nearly 20 years. We’ve provided learning solutions to more than 48,000 engineers, across 220 organizations worldwide.

About Develop Intelligence
Di Clients

surveyask

Need help finding the right learning solution?   Call us: 877-629-5631