Hacker ApprovedDepartments

Apache Maven

Ranked 4 of 17 build systems by recommenders

Recommended for dependable, declarative builds and a standard project layout that just works across Java projects and IDEs. Common caveat: XML configuration and hard-to-read errors.

Recommended for dependable, declarative builds and a standard project layout that just works across Java projects and IDEs. Common caveat: XML configuration and hard-to-read errors.

86 people gave an opinion

recommend it
44
criticize it
42
approval share
51%
Each figure is one person. RecommendsCriticizes

Recommended in 12 of 13 months

  1. November 2025: recommended
  2. December 2025: recommended
  3. January 2026: recommended
  4. February 2026: recommended
  5. March 2026: recommended
  6. April 2026: recommended
  7. May 2026: recommended
  8. June 2026: recommended
  9. July 2026: recommended
  10. August 2026: recommended
  11. September 2026: recommended
  12. October 2026: recommended
  13. November 2026: not recommended (month in progress)

Why it doesn’t carry the badge

  • 44 people recommend itNeeds 10 or more, met.
  • 1 recommender for every criticNeeds 2 to 1 or better, not met.
  • Recommended in 12 of 13 monthsNeeds 4 or more, met.

The same three rules apply to every product, and the badge can’t be bought. How the badge works

What people say about it

The reasons people give, with the number of comments that give each one. Open a reason to read what they said.

Why people recommend it

Each mark is one comment

  • Stable and mature for decades

    “managed to use maven repositories for 3 decades now with very few of these issues”

    Comment from 19 Jun 2026 in “Why stdx is not on crates.io”

    “has been solved good enough by Apache Maven more than 2 decades ago”

    Comment from 19 Dec 2025 in “Breaking Changes in Python-3.14”

    “Maven's been very nice in the decade and a half I've used it”

    Comment from 28 May 2026 in “Gradle Is Javamaxxing”
  • Declarative build config, no code

    “I like a lot that Maven doesn't allow to code in the build config”

    Comment from 19 Mar 2026 in “Java 26 is here, and with it a solid foundation for the future”

    “I dislike Gradle and use Maven, I don't want to program my build”

    Comment from 8 Apr 2026 in “The Git Commands I Run Before Reading Any Code”

    “Maven config just tells IDE locations and dependencies.”

    Comment from 20 Mar 2026 in “Java 26 is here, and with it a solid foundation for the future”
  • Dependable standard build layout

    “Maven is excellent! Once you understand it, you can work with almost any Maven project without needing to learn the specifics.”

    Comment from 3 Dec 2025 in “Anthropic acquires Bun”

    “The core plugins give you everything you need to build a self-contained jar”

    Comment from 20 Mar 2026 in “Java Is Fast. Your Code Might Not Be”

    “it's dependable, well documented, and it just plain works”

    Comment from 20 Mar 2026 in “Java Is Fast. Your Code Might Not Be”
  • Checksums, signatures, deterministic resolution

    “If you ever used Maven, NPM or... I can't think about any other tool that doesn't automatically check checksums and signatures.”

    Comment from 25 Jul 2026 in “PyPI Blog: Releases now reject new files after 14 days”

    “Requires structured namespace ownership and signed artifacts, making identity more explicit at publish time”

    Comment from 27 Dec 2025 in “How uv got so fast”

    “Maven has deterministic dependency resolution (unless you use version ranges, but don't do that)”

    Comment from 8 May 2026 in “PySimpleGUI 6”

What people warn about

Each mark is one comment

  • Hard-to-read error messages

    “you get a giant maven error stack trace which you now need to try and understand”

    Comment from 5 Jan 2026 in “Web development is fun again”

    “half of the people don't even know what to do when maven fails inexplicably”

    Comment from 15 Sep 2026 in “Java 27”
  • Stale builds need clean install

    “only Maven requires doing a clean install from time to time as it fails to properly track what needs updating”

    Comment from 3 Dec 2025 in “Anthropic acquires Bun”

    “with Maven it can easily happen that some edits don't "show" up in behavior”

    Comment from 20 Mar 2026 in “Java 26 is here, and with it a solid foundation for the future”
  • Tiresome XML and Groovy setup

    “both of which are complex and tiresome, requiring you to deal with either XML (Maven) or Groovy/Kotlin”

    Comment from 31 Dec 2025 in “2026: The Year of Java in the Terminal”

    “every time I have to do a thing in JVM dealing with maven feels like I need a goat or chicken”

    Comment from 12 Nov 2025 in “.NET 10”

Other build systems people recommend

The four most recommended other build systems, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.

Apache Maven compared with 4 alternatives
ProductRecommendCriticizeApprovalMonthsOwnedBadge
Bazel794166%123 yrs3 owners—
GNU Make764264%12——
CMake589338%12——
Apache MavenThis page444251%12——
Ninja build system371079%11—Approved
See all 17 build systems, ranked

What people said

40 of the 108 comments that mention it, newest first. Each links to the original comment.

“half of the people don't even know what to do when maven fails inexplicably”

CriticizesComment from 15 Sep 2026 in “Java 27”

“I never have to worry about reading gradle/maven docs or anything like that”

MixedComment from 11 Sep 2026 in “JEP 544: Ahead-of-Time Code Compilation”

“Maven solved the package distribution decades ago.”

RecommendsComment from 5 Aug 2026 in “SwiftUI After 7 Years: A Story of Mediocrity”

“If you ever used Maven, NPM or... I can't think about any other tool that doesn't automatically check checksums and signatures.”

RecommendsComment from 25 Jul 2026 in “PyPI Blog: Releases now reject new files after 14 days”

“has largely been replaced by maven, which is gradually being replaced gradle”

MixedComment from 12 Jul 2026 in “Show HN: Ant – A JavaScript runtime and ecosystem”

“No one in DotNet is waging an equivelent holy war about Gradle vs Maven etc...”

MixedComment from 24 Jun 2026 in “Swift Package Index Joins Apple”

“managed to use maven repositories for 3 decades now with very few of these issues”

RecommendsComment from 19 Jun 2026 in “Why stdx is not on crates.io”

“Maven 4 will offer alternative file types via extensions!”

RecommendsComment from 28 May 2026 in “Gradle Is Javamaxxing”

“Maven's been very nice in the decade and a half I've used it”

RecommendsComment from 28 May 2026 in “Gradle Is Javamaxxing”

“Maven is plenty and any time I get back to a repo that has that instead of gradle or sbt I'm much happier.”

RecommendsComment from 28 May 2026 in “Gradle Is Javamaxxing”

“the signing of JARs that are uploaded to the repository, and the fact that most release processes are not fully automated”

RecommendsComment from 19 May 2026 in “Mini Shai-Hulud Strikes Again: 314 npm Packages Compromised”

“Maven has deterministic dependency resolution (unless you use version ranges, but don't do that)”

RecommendsComment from 8 May 2026 in “PySimpleGUI 6”

“I dislike Gradle and use Maven, I don't want to program my build”

RecommendsComment from 8 Apr 2026 in “The Git Commands I Run Before Reading Any Code”

“it's focus on building in standard way is fantastic”

RecommendsComment from 20 Mar 2026 in “Java Is Fast. Your Code Might Not Be”

“It's perfect for small and medium sized projects, and for service-oriented architectures/microservices”

RecommendsComment from 20 Mar 2026 in “Java Is Fast. Your Code Might Not Be”

“It's perfect for code that is broken into medium-sized projects”

RecommendsComment from 20 Mar 2026 in “Java Is Fast. Your Code Might Not Be”

“The core plugins give you everything you need to build a self-contained jar”

RecommendsComment from 20 Mar 2026 in “Java Is Fast. Your Code Might Not Be”

“it's dependable, well documented, and it just plain works”

RecommendsComment from 20 Mar 2026 in “Java Is Fast. Your Code Might Not Be”

“with Maven it can easily happen that some edits don't "show" up in behavior”

CriticizesComment from 20 Mar 2026 in “Java 26 is here, and with it a solid foundation for the future”

“Maven config just tells IDE locations and dependencies.”

RecommendsComment from 20 Mar 2026 in “Java 26 is here, and with it a solid foundation for the future”

“I like a lot that Maven doesn't allow to code in the build config”

RecommendsComment from 19 Mar 2026 in “Java 26 is here, and with it a solid foundation for the future”

“Maven is XML (yuck) but is okay with the IDE integrations”

MixedComment from 18 Mar 2026 in “Java 26 is here, and with it a solid foundation for the future”

“Maven is old and cranky but if something else replaces it, it will probably be quite similar anyway”

MixedComment from 17 Mar 2026 in “Java 26 is here, and with it a solid foundation for the future”

“Pretty modern stack. I would start a government service using those today.”

RecommendsComment from 13 Mar 2026 in “Source code of Swedish e-government services has been leaked”

“it's declarative and HARD to make non-trivial things”

RecommendsComment from 6 Feb 2026 in “GitHub Actions Is Slowly Killing Your Engineering Team”

“With Maven it is easy to add a plugin with harmful payload as dependency”

MixedComment from 22 Jan 2026 in “Threat Actors Expand Abuse of Microsoft Visual Studio Code”

“you get a giant maven error stack trace which you now need to try and understand”

CriticizesComment from 5 Jan 2026 in “Web development is fun again”

“both of which are complex and tiresome, requiring you to deal with either XML (Maven) or Groovy/Kotlin”

CriticizesComment from 31 Dec 2025 in “2026: The Year of Java in the Terminal”

“Requires structured namespace ownership and signed artifacts, making identity more explicit at publish time”

MixedComment from 27 Dec 2025 in “How uv got so fast”

“has been solved good enough by Apache Maven more than 2 decades ago”

RecommendsComment from 19 Dec 2025 in “Breaking Changes in Python-3.14”

“You can mount the current directory into docker and run an image of your tool.”

RecommendsComment from 13 Dec 2025 in “Building small Docker images faster”

“at least it's been mostly the same since 2006”

RecommendsComment from 5 Dec 2025 in “CSS now has an if() conditional function”

“writing maven projects in Java with Eclipse. It works great.”

RecommendsComment from 4 Dec 2025 in “Programming peaked”

“Maven was a great idea. Introduce a high barrier to entry for publishing packages.”

MixedComment from 4 Dec 2025 in “Programming peaked”

“Maven is excellent! Once you understand it, you can work with almost any Maven project without needing to learn the specifics.”

RecommendsComment from 3 Dec 2025 in “Anthropic acquires Bun”

“only Maven requires doing a clean install from time to time as it fails to properly track what needs updating”

CriticizesComment from 3 Dec 2025 in “Anthropic acquires Bun”

“the quality of packages on offer in PIP and NPM versus Maven and NuGet”

RecommendsComment from 2 Dec 2025 in “Anthropic acquires Bun”

“Java Maven artifacts typically name the exact version of their dependencies.”

RecommendsComment from 24 Nov 2025 in “Shai-Hulud Returns: Over 300 NPM Packages Infected”

“every time I have to do a thing in JVM dealing with maven feels like I need a goat or chicken”

CriticizesComment from 12 Nov 2025 in “.NET 10”

“Its package system (Maven and the like) is ok, but not great.”

MixedComment from 12 Nov 2025 in “.NET 10”

Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.