Chapter 2. Demystifying Project Object Model
Project Object Model (POM) is at the heart of any Maven project. This chapter focuses on core concepts and best practices related to POM in building a large-scale, multimodule Maven project.
As we proceed with this chapter, we will be discussing the following topics:
- The POM hierarchy, super POM, and parent POM
- Extending and overriding POM files
- Maven coordinates
- Managing dependencies
- Transitive dependencies
- Dependency scopes and optional dependencies
Note
In Maven 1, the equivalent to today's
pom.xml
file was identified asproject.xml
. Maven 2 renamed it topom.xml
. More details about the POM are available at http://maven.apache.org/pom.html.