The Azure BOM for client libraries provides a verified group of Azure client libraries that are known to share common dependencies. It provides a simple and elegant way to orchestrate using multiple Azure client libraries while ensuring minimal dependency conflicts.
To consume the BOM include it in the dependencyManagement
section of your project's POM. Note that this does not
result in all dependencies being included in your project.
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-sdk-bom</artifactId>
<version>1.2.18</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
NOTE: In Spring Boot application, you can choose azure-sdk-bom's version according to Spring-Versions-Mapping.
After adding the BOM, Azure client libraries included in the BOM are now available to be added as a dependency without listing the artifact's version.
<dependencies>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-storage-blob</artifactId>
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-security-keyvault-secrets</artifactId>
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-identity</artifactId>
</dependency>
</dependencies>
Currently, the azure-sdk-bom
releases monthly using the latest globally available(GA) versions of managed libraries.
Only GA'd Azure SDKs in the com.azure
group are permitted to be managed dependencies in the azure-sdk-bom
. SDKs
that have yet to be GA'd won't be considered at this time as the azure-sdk-bom
is meant to act as a production ready
dependency management system for applications built using Azure SDKs.