Skip to content

Instantly share code, notes, and snippets.

@theoparis
Last active July 13, 2025 01:20
Show Gist options
  • Save theoparis/955bb3363cd16a372b287f6214383576 to your computer and use it in GitHub Desktop.
Save theoparis/955bb3363cd16a372b287f6214383576 to your computer and use it in GitHub Desktop.
Why Java Build Systems Suck

Gradle

  • Slow af
  • Causes issues with java functionality such as shutdown hooks
  • Tries to fetch a java runtime every time you open a project (which may not even run, e.g. on NixOS)
  • Can't build java code from source or patch existing software (causes JVM class loading errors with dependencies such as asm)

Maven

  • Slow af
  • Can't build java code from source or patch existing software (causes JVM class loading errors with dependencies such as asm)

Bazel

  • Slow af
  • Confusing bazelmod system that has poor documentation on how to fetch external http files

Buck2

  • No java support outside of Meta's internal codebases

Comments are disabled for this gist.