Unify Logo Footer.svg
Unify Automations
Logo
Maven

Maven

Logo

3 mins READ

The Maven node resolves and downloads Java dependencies from a Maven repository inside an automation. Use it when a workflow needs to pull specific JAR files — for a Code node, a build pipeline, or downstream processing — without running a full build tool locally.

Overview

Given a set of Maven coordinates (group ID, artifact ID, version), the node resolves the full dependency tree, downloads all required JARs, and makes them available for subsequent steps. License information is included in the download output, so compliance checks can be done in the same automation.

Screenshot 2026-08-29 at 17.02.46 1.png
Screenshot 2026-08-29 at 17.02.46 1.png

Repository Sources

By default, the node resolves dependencies from Maven Central. To use a private or internal repository — a Nexus or Artifactory instance, for example — configure a Maven connection and select it in the node. The node will resolve from the private repository first, falling back to Maven Central if a dependency is not found there.

Dependency Options

  • Transitive dependencies — by default, the node downloads the full dependency tree (the artifact you specified, plus everything it depends on). To download only the directly declared artifacts without their transitive dependencies, enable the exclude-transitives option.

  • License information — the download result includes the license metadata for each resolved artifact. Use this in a downstream step to flag or block artifacts with licenses that conflict with your project's requirements.

Note: Resolving a large dependency tree can take time, especially over a slow or rate-limited registry connection. If the automation is time-sensitive, narrow the dependency set or exclude transitives where the calling code manages them directly.

Output

The node returns the resolved JAR files and their associated license data. Pass the JARs to a Code node or a subsequent build step that expects them on a classpath. The license output can be passed to a condition or a notification step for compliance gating.

Screenshot 2026-08-29 at 17.02.55 1.png
Screenshot 2026-08-29 at 17.02.55 1.png

Notes

Keep these practices in mind when using the Maven node:

  • Use exact version numbers rather than version ranges — ranges can resolve to different artifacts on different runs, making the automation non-deterministic.

  • Configure a private Maven connection before referencing internal artifacts — the node will not infer credentials from the environment.

  • Review the license output before deploying automations in environments with strict open-source compliance requirements.

  • Exclude transitive dependencies when the calling code manages them directly — this keeps the download set small and avoids version conflicts.

Pinning versions and supplying explicit connections ensures the Maven node resolves consistently across every run.