Skip to main content

Build of Materials

In Maven, a BOM sets version limits for dependencies and their transitive ones. In a BOM file, you define an allowed version for each one. You add the BOM to dependency-management. Then any dependencies clause needs no version. Maven pulls the version from the BOM.

The BOM itself will never bring in any dependencies.

relation with hardware

In hardware, a BOM lists the allowed parts you can use. A BOM can also list the parts used in the final product.

In Maven and Gradle, BOM means the first idea. The second idea is what we call SBOM in software deliveries.