The CLM Book - Optimized Component Lifecycle Management with Sonatype CLM
In the v1 API a Maven coordinate structure (GAV) is used when referring to a component and as input to search. A breaking change was introduced in v2 to use an agnostic structure when referring to a component’s coordinates as well as the format. This new structure (component identifier) provides flexibility across different packaging systems and how a component is referenced in those systems.
Support for component identifiers includes the following packaging systems:
- Maven
- NuGet
As an example, the skeleton of this agnostic structure is:
{ "componentIdentifier":{ "format":"supported-format", "coordinates":{ } } }
Maven Component Identifier
Maven components are indicated with the format of maven and specify attributes for the complete Maven GAVEC:
{ "componentIdentifier":{ "format":"maven", "coordinates":{ "artifactId":"tomcat-util", "classifier":"", "extension":"jar", "groupId":"tomcat", "version":"5.5.23" } } }
NuGet Component Identifier
NuGet components are indicated with the format of nuget:
{ "componentIdentifier":{ "format":"nuget", "coordinates":{ "packageId":"Newtonsoft.Json", "version":"6.0.8" } } }