com.github.package-url:packageurl-java

The official Java implementation of the PackageURL specification. PackageURL (purl) is a minimal specification for describing a package via a "mostly universal" URL.


Keywords
java, jvm-languages, library, package-url, purl
License
MIT

Documentation

Build Status Maven Central License

Package URL (purl) for Java

This project implements a purl parser and class for Java.

Compiling

mvn clean install

Maven Usage

Package URL is available on the Maven Central Repository. These can be used without having to compile the project yourself.

<dependencies>
    <dependency>
        <groupId>com.github.package-url</groupId>
        <artifactId>packageurl-java</artifactId>
        <version>1.4.2</version>
    </dependency>
</dependencies>

Usage

Creates a new PackageURL object from a purl string:

PackageURL purl = new PackageURL(purlString);

Creates a new PackageURL object from parameters:

PackageURL purl = new PackageURL(type, namespace, name, version, qualifiers, subpath);

Creates a new PackageURL object using the builder pattern:

PackageURL purl = PackageURLBuilder.aPackageURL()
    .withType("type")
    .withNamespace("namespace")
    .withName("name")
    .withVersion("version")
    .withQualifier("key","value")
    .withSubpath("subpath")
    .build();

Validates a String field in a POJO (Bean Validation):

@PackageURL
private String purl;

License

Permission to modify and redistribute is granted under the terms of the MIT License