The first two chapters of the book are geared toward a new user of Maven 2, they discuss what Maven is and get you started with your first Maven project. Chapter 3 builds on that and shows you how to build a real-world project. Chapter 4 shows you how to build and deploy a J2EE application. Chapter 5 focuses on developing plugins for Maven. Chapter 6 discusses project monitoring issues and reporting, Chapter 7 discusses using Maven in a team development environment, and Chapter 8 shows you how to migrate Ant builds to Maven.
Chapter 1, Introducing Maven, goes through the background and philosophy behind Maven and defines what Maven is.
Chapter 2, Getting Started with Maven, gives detailed instructions on creating, compiling and packaging your first project. After reading this second chapter, you should be up and running with Maven.
Chapter 3, Creating Applications with Maven, illustrates Maven’s best practices and advanced uses by working on a real-world example application. In this chapter you will learn to set up the directory structure for a typical application and the basics of managing an application’s development with Maven.
Chapter 4, Building J2EE Applications, shows how to create the build for a full-fledged J2EE application, how to use Maven to build J2EE archives (JAR, WAR, EAR, EJB, Web Services), and how to use Maven to deploy J2EE archives to a container. At this stage you’ll pretty much become an expert Maven user.
Chapter 5, Developing Custom Maven Plugins, focuses on the task of writing custom plugins. It starts by describing fundamentals, including a review of plugin terminology and the basic mechanics of the Maven plugin framework. From there, the chapter covers the tools available to simplify the life of the plugin developer. Finally, it discusses the various ways that a plugin can interact with the Maven build environment and explores some examples.
Chapter 6, Assessing Project Health with Maven, discusses Maven’s monitoring tools, reporting tools, and how to use Maven to generate a Web site for your project. In this chapter, you will be revisiting the Proficio application that was developed in Chapter 3, and learning more about the health of the project.
Chapter 7, Team Collaboration with Maven, looks at Maven as a set of practices and tools that enable effective team communication and collaboration. These tools aid the team to organize, visualize, and document for reuse the artifacts that result from a software project. You will learn how to use Maven to ensure successful team development.
Chapter 8, Migrating to Maven, explains a migration path from an existing build in Ant to Maven. After reading this chapter, you will be able to take an existing Ant-based build, split it into modular components if needed, compile and test the code, create JARs, and install those JARs in your local repository using Maven. At the same time, you will be able to keep your current build working.