POM (Project Object Model)

  • Used by maven
  • It is an xml file: pom.xml
  • contains project and configuration details to build the project

BOM (Bill of Materials)

  • Used by maven
  • Special POM file that groups dependency versions that are known to be valid and tested to work together
  • For spring related dependencies, it can be used by gradle using plugin:
    • io.spring.gradle:dependency-management-plugin
  • Use in gradle:
dependencyManagement {
  imports {
    // define the BOM here
    mavenBom 'org.springframework.boot:spring-boot-starter-parent:1.2.1.RELEASE'
  }
}