LicenseSpring

Software Licensing for Java Applications

The LicenseSpring Java SDK lets you implement license activation, entitlement enforcement, and usage tracking directly inside your Java application with no external licensing infrastructure to build or maintain.

Built for the full range of JVM-based environments, the SDK supports desktop, server, enterprise, and distributed Java deployments from a single integration.

  • ISO 27001 Certified
  • ISO 9001 Certified
  • Trusted by Software Vendors Worldwide

Implement Java Licensing in Minutes

The Java SDK integrates as a library directly into your Java application. Once installed, you have full access to LicenseSpring's licensing infrastructure.

With the SDK, you can:

Activate and validate licenses at runtime: online, offline, or in air-gapped environments

Enforce node-locked, floating, subscription, and consumption-based licensing: using the model that fits your product

Gate features by entitlement: control access to functionality at the SDK level, across any JVM-based application type

Run local license checks with configurable grace periods: define how long the SDK honors a cached license before requiring revalidation, so connectivity loss never interrupts active users

Bind licenses to hardware: generate persistent hardware IDs using multiple device fingerprinting algorithms suited to the deployment environment

Track usage and activations: feed license telemetry back to the LicenseSpring platform in real time

Not a LicenseSpring customer? Get your free account now.

Built for JVM-Based Software Platforms

The Java SDK is designed for vendors building commercial software on the JVM.

Common Use Cases

Use CaseDescription
Enterprise Software
Licensing Java-based enterprise applications and internal tools
Desktop Applications
Licensing Java desktop software built with Swing or JavaFX
Server Applications
Licensing backend or middleware services
Developer Tools
Protecting proprietary developer platforms or SDKs
Distributed Systems
Enforcing licensing across clustered or distributed Java deployments

Modular SDK Architecture

The Java SDK is organized into discrete modules, allowing you to include only the components your application architecture requires. Before integrating, review the Java Modules documentation to select the right module for your environment.

Modules cover:

Application license enforcement

Feature entitlement validation

Concurrent and floating license environments

Integration with LicenseSpring's licensing management services

Minimum Java Requirements

The Java SDK supports applications running on Java 8 Update 161 (8u161) and later, ensuring compatibility with the broad range of modern JVM environments while maintaining security and runtime stability.

Floating and Concurrent Licensing Support

For applications requiring shared license access across multiple users or systems, the Java SDK integrates with LicenseSpring's floating licensing infrastructure.

Floating licenses allow:

Multiple users to draw from a shared license pool

Concurrent license enforcement across distributed systems

Dynamic license allocation based on active usage

Server-Side Licensing Operations

For server-side licensing management tasks, such as creating orders, generating license keys, or automating entitlement provisioning, LicenseSpring provides a dedicated Management API.

The Management API enables you to:

Create and manage licenses programmatically

Generate license keys for new customers

Create orders and license entitlements

Integrate licensing operations into existing business workflows

Hardware ID Generation

The Java SDK includes hardware fingerprinting support for node-locked licensing and device-bound activation. Multiple algorithms are available for computing a unique, persistent hardware identifier, selecting the approach appropriate for the deployment environment, whether a physical workstation, a virtual machine, or a server instance.

Generated hardware IDs are used for:

Node-locked license binding

Device identification and activation tracking

Consistent hardware fingerprinting across multi-SDK product deployments

Cross-SDK Interoperability

Products that pair a Java component with other parts of their stack, whether that be a C++ core engine, a .NET front-end, or a Node.js management interface, can use multiple LicenseSpring SDKs simultaneously.

All LicenseSpring SDKs share a common license file format and compute hardware identifiers using the same underlying logic. A license issued to a device is recognized consistently across every component of your product, regardless of which SDK each part uses.

Offline and Air-Gapped Licensing

The Java SDK fully supports deployments with limited or no internet connectivity with two distinct activation paths:

Offline activation: uses a file-exchange flow for environments with occasional or restricted connectivity

Air-gapped activation: uses a code-exchange flow for environments where no external data transfer is permitted

Both paths support local license validation with configurable grace periods, making the Java SDK suitable for enterprise environments with strict network policies, on-premises server deployments, and distributed systems where persistent server connectivity cannot be guaranteed.

Javadoc Documentation and SDK Downloads

From SDK version 2.2.0 onward, developers have access to hosted Javadoc documentation, release artifacts, and downloadable SDK packages, providing full API reference and integration guidance alongside each release.

SDK Updates and Release Notes

Stay current on new features, platform support additions, security updates, and bug fixes via the LicenseSpring Platform Changelog.

Get Help Integrating the Java SDK

Our developer support team can help you implement licensing quickly and correctly.

  • Full SDK documentation and API reference
  • Integration tutorials and code examples
  • Direct technical support

Add Professional Licensing to Your Java Application

The LicenseSpring Java SDK gives you the infrastructure to protect your software, enforce licensing policies, and monetize Java applications across every environment you target.