Maven compatibility

Barista is defined against Maven. It reads the same project and configuration files, writes into the same local repository, and is benchmarked for parity against mvn on every release. The goal is that an existing project works the day you switch — no pom.xml edits, no migration, no lock-in.

What Barista reads

Bundled Maven, and the versions we target

Barista bundles a pinned Apache Maven 4.0.0-rc-3 distribution, so resolution and caching work without a separate mvn install. Plain mvn remains the ground-truth reference: every release is benchmarked against mvn 3.9.x, mvn 4.0.x, and mvnd 2.x. Choose the behavior explicitly when you need to:

barista pull --maven-compat auto   # detect from the project (default)
barista pull --maven-compat 3.9    # Maven 3.9-compatible behavior
barista pull --maven-compat 4.0    # Maven 4.0-compatible behavior

Coexisting with mvn and mvnd

Dependency scopes

Resolution is scope-aware, matching Maven’s scopes: compile, runtime, test, provided, and system. Narrow a resolve with --scope.

Not supported in v0.1

Barista is Maven-specific — there is no Gradle support. Within the Maven surface, this pre-release is honest about what is not wired yet:

See the CLI reference for the exact command-by-command status.