# Install maven with Homebrew

Java-based project management. Version 3.9.16 via Homebrew; verified 2026-05-17.

## Install

```sh
sudo av install brew:maven
```

## Agent safety answer

maven builds Java projects and can deploy artifacts to package repositories.

- **Credential access:** Reads settings.xml credentials, environment variables, and repository auth.
- **Remote mutation:** Can deploy artifacts and run plugins that call remote services.
- **Publish/artifact risk:** Can publish jars, plugins, and release metadata.
- **Recommended control:** Gate deploy, release plugins, and credentialed repository access.
- **Agent-use guidance:** Allow test/package goals; require approval for deploy, release, and secret-backed plugin goals.

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install maven
```

  Evidence: provider-native install command

## Package facts

- **Package key:** brew:maven
- **Package manager:** Homebrew
- **Version:** 3.9.16
- **Source summary:** Java-based project management
- **Homepage:** <https://maven.apache.org/>
- **Last updated:** 2026-05-17T19:11:46Z
- **Generated:** 2026-08-03T00:40:33+00:00

## Executables

- mvn (alias)
- mvnDebug (alias)
- mvnyjp (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 3.9.16
## Project history and usage

Apache Maven is the Apache Software Foundation's long-running Java build and project-management tool, centered on a project object model, dependency coordinates, plugins, and repository metadata.

### Project history

Maven's official site describes it as a build tool for Java projects that uses a Project Object Model to manage compilation, testing, and documentation. The Apache Maven source page also shows that the project is not a single repository in practice: full Maven sources span Maven core, plugins, components, skins, and related repositories, with a manifest repository used to check out the whole source tree.

The release history documents Maven 3 as the maintained general-availability line and Maven 4 as a long-running alpha, beta, and release-candidate effort. That makes Maven unusual among CLI build tools: the user-facing command is compact, but the surrounding ecosystem of plugins, resolver components, repository layout, and site tooling is large and separately versioned.

### Adoption history

Maven became a default packaging and dependency idiom for Java because its repository model is shared beyond Maven itself. Apache's Maven Central documentation explicitly addresses both projects that use Maven for builds and projects that only want their releases added to the central repository.

Homebrew, Debian-family, RPM-family, Chocolatey, Scoop, Nix, Pacman, and other package-manager entries in the input show Maven's broad CLI distribution footprint outside Java IDEs.

### How it is used

Typical CLI use is `mvn` in a project containing a `pom.xml`, with per-user settings in `~/.m2/settings.xml` and project-local runner options in `.mvn/maven.config`, `.mvn/jvm.config`, and `.mvn/extensions.xml`. Credentials for remote repositories and mirrors live in the Maven settings model's `servers` entries, with encrypted-password support via `settings-security.xml`.

### Why package nerds care

Maven matters to package nerds because it standardized much of the vocabulary of Java artifact packaging: groupId, artifactId, version, POM metadata, transitive dependency resolution, local caches, and central remote repositories. Even tools that compete with Maven frequently consume Maven repositories and Maven metadata.

### Timeline

- 2002: Apache Maven site copyright history begins.
- 2010: Maven 3 line begins and later becomes the long-lived GA family.
- 2023: Maven 4 alpha releases appear in the official release history.
- 2024: Maven 4 beta and release-candidate series begins.
- 2026: Maven 3.9.x remains a maintained GA release line while Maven 4 release candidates continue.

### Related projects

- Maven Central, Maven Resolver, Maven plugins, Maven Wrapper, Maven Daemon, Gradle, Apache Ant, Apache Ivy

### Sources

- <https://maven.apache.org/>
- <https://maven.apache.org/configure.html>
- <https://maven.apache.org/docs/history.html>
- <https://maven.apache.org/guides/mini/guide-encryption.html>
- <https://maven.apache.org/ref/3.9.16/maven-settings/settings.html>
- <https://maven.apache.org/repository/index.html>
- <https://maven.apache.org/scm.html>
- source_facts.package-manager-url


## Security Notes

build system capable of executing project logic.

- **Geiger risk:** yellow / high
- build system capable of executing project logic


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: ~/.m2/settings.xml

## Credential files

- Unix: ~/.m2/settings.xml

## Combined YAML source

View the package source record on GitHub. [combined/maven.yml](https://github.com/automic-vault/db/blob/main/combined/maven.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- curated configuration and credential file locations
- curated package history
- pkgdb category and tag curation
- curated agent safety answer
