Founded by the original author of Maven, Sonatype is best placed to provide definitive Maven training through its Maven tutorials. These online training courses provide a complete Java development tutorial that will enable any developer to work confidently with the versatile Maven development toolkit for Java project build and release management.
Course description:
The Sonatype Maven training course MVN-201 Designing Development Infrastructure covers topics for the advanced Maven user such as:
- Advanced multimodule project architecture
- Enforcing standards with the Enforcer plugin
- Installing and configuring a repository manager
- Installing and configuring a continuous integration server
Audience:
This class is designed for Development Infrastructure engineers who are responsible for maintaining development infrastructure using Maven and Nexus tools.
Goal:
Familiarity with Structure of a Maven POM and a Maven Multi-module Project
Prerequisites:
A familiarity with the content covered in MVN-101 Maven Mechanics
Outline:
- Module 1: Consistent Builds
- Standardized Environment
- Explicit Use of Plugin Versions
- The Enforcer Plugin
- Module 2: Site Generation with Maven
- Maven Site as Collaboration Tool
- The Site Lifecycle
- Default Site Layout
- Creating a Site Project
- Organizing Your Site
- Adding Site Content
- Module 3: Site Reporting with Maven
- Technical Documentation
- Browsable Source Code
- Displaying Test Results
- Code Quality Metrics
- Lab 1: Adding Reports to Your Site
- Module 4: Web Development
- Using the Maven Jetty Plugin
- Developing Web Applications with Maven
- Lab 2: Running Your Webapp in Jetty
- Module 5: Repository Management
- What is an Enterprise Repository?
- Installing Nexus
- Using Nexus
- Nexus Repositories and Security
- Deploying to Nexus with Maven
- Managing Maven Settings with Nexus
- Enterprise Security (LDAP)
- Configuring Procurement in Nexus
- Performing a Staged Release
- Module 6: Release Management
- Release Management
- The Maven Release Plugin
- Developer Release Workflow
- Integration with Source Control
- Example Using Subversion
- Example Using Git
- Lab 3: Using Nexus
- Module 7: Continuous Integration with Hudson
- What is Continuous Integration?
- Benefits of Continuous Integration
- Downloading Hudson
- Installing Hudson
- Running Hudson
- Configuring Hudson for Maven
- Setting Up a Maven Job in Hudson
- Monitoring Hudson Builds
- Demonstration of Hudson
- Lab 4: Using Hudson
