Lombok
The most recommended of 5 Java libraries
Developers recommend Lombok for cutting Java boilerplate with annotations and denser code. Common caveat: generated behavior is not visible in the source, and it hooks into javac internals.
Developers recommend Lombok for cutting Java boilerplate with annotations and denser code. Common caveat: generated behavior is not visible in the source, and it hooks into javac internals.
22 people gave an opinion
- recommend it
- 9
- criticize it
- 13
- approval share
- 41%
Recommended in 4 of 13 months
- November 2025: recommended
- December 2025: not recommended
- January 2026: recommended
- February 2026: not recommended
- March 2026: not recommended
- April 2026: not recommended
- May 2026: not recommended
- June 2026: not recommended
- July 2026: not recommended
- August 2026: not recommended
- September 2026: recommended
- October 2026: recommended
- November 2026: not recommended (month in progress)
Why it doesn’t carry the badge
- 9 people recommend itNeeds 10 or more, not met.
- 0.6 recommenders for every criticNeeds 2 to 1 or better, not met.
- Recommended in 4 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
Denser code expressing intent
“it surely saves some tokens since it just expresses the intention of the code in a denser way”
Comment from 19 Oct 2026 in “Lombok Is Still Relevant in the Age of Java Records” “I don't need simple expected behaviors visible "locally" other than that annotation.”
Comment from 19 Oct 2026 in “Lombok Is Still Relevant in the Age of Java Records” Common part of Java toolchains
“I was happy with IDE/static checkers, lombok, mapstruct, etc.”
Comment from 15 Sep 2026 in “Java 27” “In Java we needed Lombok and builder patterns.”
Comment from 7 Jan 2026 in “Stop Designing Languages. Write Libraries Instead (2016)”
What people warn about
Each mark is one comment
Hidden behavior not locally visible
“generate behavior that is not locally visible, was never a sane trade-off for saving a little boilerplate”
Comment from 19 Oct 2026 in “Lombok Is Still Relevant in the Age of Java Records” “if you rearrange the order of two fields with the same type on a class you invisibly break the code”
Comment from 19 Oct 2026 in “Lombok Is Still Relevant in the Age of Java Records” “I just have issue with what happens under the hood.”
Comment from 19 Oct 2026 in “Lombok Is Still Relevant in the Age of Java Records” Less useful in modern Java
“Lombok is, IMO, an artefact of the years of Sun neglect of Java the language, a workaround.”
Comment from 19 Oct 2026 in “Lombok Is Still Relevant in the Age of Java Records” “Quality of life libraries like Lombok (or my library) are now anachronisms.”
Comment from 15 Oct 2026 in “Lombok Is Still Relevant in the Age of Java Records” “If you write modern Java, Lombok really doesn't add much.”
Comment from 19 Oct 2026 in “Lombok Is Still Relevant in the Age of Java Records” Hacks into javac internals
“Project Lombok rewrites code, however it misuses annotation processing.”
Comment from 3 Mar 2026 in “Go is the best language for agents” “Lombok hacks into javac and manipulates the AST.”
Comment from 16 Sep 2026 in “Java 27” Hard-to-remove build dependency
“you get the Lombok problem, where you have this build dependency that refuses to go away”
Comment from 23 Jan 2026 in “Kotlin's Rich Errors: Native, Typed Errors Without Exceptions” “If you ditch lombok everything gets a lot easier.”
Comment from 19 Jun 2026 in “Project Valhalla, Explained: How a Decade of Work Arrives in JDK 28”
Other Java libraries people recommend
The four most recommended other Java libraries, 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.
| Product | Recommend | Criticize | Approval | Months | Owned | Badge |
|---|---|---|---|---|---|---|
| LombokThis page | 9 | 13 | 41% | 4 | — | — |
| Apache Commons | 8 | 2 | 80% | 5 | — | — |
| Google Guava | 7 | 2 | 78% | 5 | — | — |
| LMAX Disruptor | 6 | 3 | 67% | 5 | — | — |
| Java Vector API | 5 | 3 | 63% | 5 | — | — |
What people said
20 of the 23 comments that mention it, newest first. Each links to the original comment.
“If you write modern Java, Lombok really doesn't add much.”
“I just have issue with what happens under the hood.”
“The problem that Lombok tries to solve in obscure ways, can be solved much simpler: with a code generator program.”
“I don't need simple expected behaviors visible "locally" other than that annotation.”
“coming in and shitting up code bases worldwide with cargo-culty supposed 'best practices' like Lombok”
“It is annoying, but possible.”
“it surely saves some tokens since it just expresses the intention of the code in a denser way”
“Lombok is, IMO, an artefact of the years of Sun neglect of Java the language, a workaround.”
“if you rearrange the order of two fields with the same type on a class you invisibly break the code”
“generate behavior that is not locally visible, was never a sane trade-off for saving a little boilerplate”
“Quality of life libraries like Lombok (or my library) are now anachronisms.”
“Lombok hacks into javac and manipulates the AST.”
“They're very good for diminishing boilerplate.”
“I was happy with IDE/static checkers, lombok, mapstruct, etc.”
“If you ditch lombok everything gets a lot easier.”
“it's not even uncommon to have entire classes with no defined functions at all”
“Spring Boot also often brings friends like MapStruct or Lombok or Mockito which add even more dynamic behavior and issues when you update JDK”
“Project Lombok rewrites code, however it misuses annotation processing.”
“you get the Lombok problem, where you have this build dependency that refuses to go away”
“In Java we needed Lombok and builder patterns.”
Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.