What this book covers
Chapter 1, Getting Started, covers the installation of Apache Maven on Microsoft Windows, Mac OS X, or Linux, as well as creating and building your first project with it. The chapter also details the steps to install prerequisite software required for Maven.
Chapter 2, IDE Integration with Maven, focuses on configuring popular IDEs with the help of Maven and running Maven projects in them. Eclipse, NetBeans, and IntelliJ IDEA are the three IDEs covered in this chapter.
Chapter 3, Maven Lifecycle, covers the life cycle of Apache Maven and explores the concept of phases and goals. It also describes how a user can use profiles to customize builds.
Chapter 4, Essential Maven Plugins, describes the Maven plugins, which are essential to build a project. For each plugin, the various configuration options are also explored.
Chapter 5, Dependency Management, explores the various types of Maven dependencies, and delves into downloading and getting reports on them. It also talks about how to handle network issues during a dependency download.
Chapter 6, Code Quality Plugins, covers the support provided for various code quality tools, such as Checkstyle, PMD, FindBugs, and Sonar. The configuration options for each plugin as well as generating reports are also explored.
Chapter 7, Reporting and Documentation, covers the reporting features of Maven. The site plugins and the various reports supported by it are described in detail.
Chapter 8, Handling Typical Build Requirements, explores the features provided by Maven to handle builds of selective sources and the inclusion of selected resources. It also describes how to use the command line and help features of Maven along with interfacing with software configuration management systems.
Chapter 9, Multi-module Projects, describes the support required to build large projects with multiple modules. Maven support for aggregated builds and defining parent-child relationships is also described here.
Chapter 10, Java Development with Maven, describes the building of different types of java artifacts like Jar, War and Ear. It also describes Maven support to run projects in Jetty and Tomcat.
Chapter 11, Advanced Maven Usage, explores the advanced features of Maven, such as creating distributions and enforcing rules. It also describes how to make a project release.