Java Modules in Real Life

Advice on why, when, when not, and how to use Java modules in real life for your projects

Close-up of a sculpture consisting of abstract metal pieces, which are partially rusted.

Many Java projects (by some counts, over half) run on Java versions that support the module system and Maven Central offers over 4.200 modules. If you think about creating modules for your (next) project, you may have some questions:

  • Why use modules?
  • Incremental modularization
  • What are common or tricky roadblocks?
  • Where's the exit?!
  • When (not) to use modules?

In this talk, I'll answer these questions, so you can better decide whether modules are right for your project.

Slides

Here's the current version of the slides.

I also embedded them below. If they're focussed, you can navigate with arrow keys or swipes (they're two-dimensional, with chapters on the horizontal axis and chapter content layed out vertically). Use Page Up/Down for linearized order and ? for more shortcuts.

Upcoming Presentations

In the coming months, I'll present this talk at IntelliJ IDEA LiveStream. If you're there as well, I'd love to meet you - I'm always up for a chat. 😁 Just flag me down when you see me. (This includes chat rooms.)

Past Presentations

I gave this talk once before. See below for links to slides (as they were at that very event), videos, and other information.

2022