Books & Videos

Table of Contents

  1. Introduction

    1. Chapter 1 Introducing Apache Maven

      1. Convention over Configuration
      2. A Common Interface
      3. Universal Reuse Through Maven Plugins
      4. Conceptual Model of a “Project”
      5. Is Maven an Alternative to XYZ?
      6. Comparing Maven and Ant
      7. Summary
    2. Chapter 2 Installing and Running Maven

      1. Verify Your Java Installation
      2. Downloading Maven
      3. Installing Maven
      4. Testing a Maven Installation
      5. Maven Installation Details
      6. Getting Help with Maven
      7. Using the Maven Help Plugin
      8. About the Apache Software License
  2. Maven by Example

    1. Chapter 3 A Simple Maven Project

      1. Introduction
      2. Creating a Simple Project
      3. Building a Simple Project
      4. Simple Project Object Model
      5. Core Concepts
      6. Summary
    2. Chapter 4 Customizing a Maven Project

      1. Introduction
      2. Defining the Simple Weather Project
      3. Creating the Simple Weather Project
      4. Customize Project Information
      5. Add New Dependencies
      6. Simple Weather Source Code
      7. Add Resources
      8. Running the Simple Weather Program
      9. Writing Unit Tests
      10. Adding Test-Scoped Dependencies
      11. Adding Unit Test Resources
      12. Executing Unit Tests
      13. Building a Packaged Command-Line Application
    3. Chapter 5 A Simple Web Application

      1. Introduction
      2. Defining the Simple Web Application
      3. Creating the Simple Web Project
      4. Configuring the Jetty Plugin
      5. Adding a Simple Servlet
      6. Adding J2EE Dependencies
      7. Conclusion
    4. Chapter 6 A Multimodule Project

      1. Introduction
      2. The Simple Parent Project
      3. The Simple Weather Module
      4. The Simple Web Application Module
      5. Building the Multimodule Project
      6. Running the Web Application
    5. Chapter 7 Multimodule Enterprise Project

      1. Introduction
      2. The Simple Parent Project
      3. The Simple Model Module
      4. The Simple Weather Module
      5. The Simple Persist Module
      6. The Simple Web Application Module
      7. Running the Web Application
      8. The simple-command Module
      9. Running simple-command
      10. Conclusion
  3. Maven Reference

    1. Chapter 8 Optimizing and Refactoring POMs

      1. Introduction
      2. POM Cleanup
      3. Optimizing Dependencies
      4. Optimizing Plugins
      5. Optimizing with the Maven Dependency Plugin
      6. Final POMs
      7. Conclusion
    2. Chapter 9 The Project Object Model

      1. Introduction
      2. The POM
      3. POM Syntax
      4. Project Dependencies
      5. Project Relationships
      6. POM Best Practices
    3. Chapter 10 The Build Lifecycle

      1. Introduction
      2. Package-Specific Lifecycles
      3. Common Lifecycle Goals
    4. Chapter 11 Build Profiles

      1. What Are They For?
      2. Portability Through Maven Profiles
      3. Profile Activation
      4. External Profiles
      5. Settings Profiles
      6. Listing Active Profiles
      7. Tips and Tricks
      8. Summary
    5. Chapter 12 Maven Assemblies

      1. Introduction
      2. Assembly Basics
      3. Overview of the Assembly Descriptor
      4. The Assembly Descriptor
      5. Controlling the Contents of an Assembly
      6. Best Practices
      7. Summary
    6. Chapter 13 Properties and Resource Filtering

      1. Introduction
      2. Maven Properties
      3. Resource Filtering
    7. Chapter 14 Maven and Eclipse: m2eclipse

      1. Introduction
      2. m2eclipse
      3. Installing the m2eclipse Plugin
        1. Installing Prerequisites
          1. Installing Subclipse
          2. Installing Mylyn
          3. Installing AspectJ Development Tools (AJDT)
          4. Installing the Web Tools Platform (WTP)
        2. Installing m2eclipse
      4. Enabling the Maven Console
      5. Creating a Maven Project
        1. Checking Out a Maven Project from SCM
        2. Creating a Maven Project from a Maven Archetype
        3. Creating a Maven Module
      6. Create a Maven POM File
      7. Importing Maven Projects
        1. Importing a Maven Project
        2. Materializing a Maven Project
      8. Running Maven Builds
      9. Working with Maven Projects
        1. Adding and Updating Dependencies and Plugins
        2. Creating a Maven Module
        3. Downloading Source
        4. Opening Project Pages
        5. Resolving Dependencies
      10. Working with Maven Repositories
        1. Searching For Maven Artifacts and Java classes
        2. Indexing Maven Repositories
      11. Using the Form-Based POM Editor
      12. Analyzing Project Dependencies in m2eclipse
      13. Maven Preferences
      14. Summary
    8. Chapter 15 Site Generation

      1. Introduction
      2. Building a Project Site with Maven
      3. Customizing the Site Descriptor
      4. Site Directory Structure
      5. Writing Project Documentation
      6. Deploying Your Project Web Site
      7. Customizing Site Appearance
      8. Tips and Tricks
    9. Chapter 16 Repository Manager

      1. Introduction
        1. History of Nexus
      2. Installing Nexus
        1. Downloading Nexus from Sonatype
        2. Installing Nexus
        3. Running Nexus
        4. Post-Install Checklist
        5. Startup Scripts for Linux
          1. Add Nexus as a service on Red Hat, Fedora, and CentOS
          2. Add Nexus as a service on Ubuntu
        6. Running Nexus Behind a Proxy
      3. Using Nexus
        1. Browsing Repositories
        2. Browsing Groups
        3. Searching for Artifacts
        4. Browsing System Feeds
        5. Browsing Log Files and Configuration
        6. Changing Your Password
      4. Configuring Maven to Use Nexus Repositories
        1. Using the Nexus Central Proxy Repository
        2. Using Nexus for Snapshot Repositories
        3. Adding Custom Repositories for Missing Dependencies
        4. Adding a New Repository
        5. Adding a Repository to a Group
      5. Configuring Nexus
        1. Customizing Server Configuration
        2. Managing Repositories
        3. Managing Groups
        4. Managing Routes
        5. Managing Scheduled Services
        6. Managing Security
          1. Managing privileges
          2. Managing repository targets
          3. Managing security roles
          4. Managing users
        7. Network Configuration
      6. Maintaining Repositories
        1. Uploading Artifacts to Hosted Repositories
      7. Deploying Artifacts to Nexus
        1. Configuring Deployment Security
        2. Deploying Releases
        3. Deploying Snapshots
        4. Deploying Third-Party Artifacts
    10. Chapter 17 Writing Plugins

      1. Introduction
      2. Programming Maven
      3. Plugin Descriptor
      4. Writing a Custom Plugin
      5. Mojo Parameters
      6. Plugins and the Maven Lifecycle
    11. Chapter 18 Writing Plugins in Alternative Languages

      1. Writing Plugins in Ant
      2. Creating an Ant Plugin
      3. Writing Plugins in JRuby
      4. Writing Plugins in Groovy
  4. Appendixes

    1. Appendix Settings Details

      1. Quick Overview
      2. Settings Details
    2. Appendix Sun Specification Alternatives

  1. Colophon