Skip to content

How we choose books

Every book on this site is evaluated against the same criteria before it's added:

We deliberately keep each category short rather than listing every Java book that exists. A list of 40 "good enough" books is less useful than a list of 6 genuinely great ones.

What we won't do

We don't accept payment to list, rank, or favorably describe a book. Outbound retailer links are plain, unpaid links today; if that ever changes, this page will say so.

How the list is maintained

This site is open source. Book descriptions, categories, and rankings live in a single data file in the GitHub repository, and changes are tracked in version control. If you spot an outdated edition, a broken link, or think a book deserves a spot, open an issue or pull request — see the contributing guide.

Who's behind this

Awesome Java Books is maintained by Mohsen Karimi and the community of contributors listed in the GitHub contributor graph.

Page last reviewed: August 2026.