What is the new module system in Java 9? In Java 7, the JDK was a complex monolithic platform. With Java 9, the platform itself needs to be modular to introduce the new system. Alan Bateman explains the underlining organization of the module system. He shows how modules are linked to each other within an application and how to create runtime images with the jlink tool, for example.

The JDK 9 will work with your application the same as JDK 8 did. To make sure your code will run, you need to understand the deprecation process, encapsulation, and how to check your applications for unsupported APIs. Read all about it in the blog “Gear up for Java 9.”

You will still be able to use the class path with Java 9. Alan shows how to use the module and class paths together in the video below. He walks you through an example of an application with several modules. He also dives into modules themselves and explains their nomenclature, packages with many resources, configuration, and commands, to name a few.

I recommend watching the entire video. To help you go back to this content, I listed the topics addressed in this video:

Part 1: Modular development starts with a modular platform

Java Linker (10:02)

Part 2: Introduction to modules (13:53)

An example with multiple modules (15:38)

Commands for compiling modules, How to compile and package modules (25:13)

Using the module path and classpath together (35:45)

Linking - a runtime image (38:39)

Related to the module system:

JEP 261: Module System

JEP 201: Modular source code

JEP 200: The modular JDK

JEP 220: Modular run-time images

JEP 282: The Java Linker (jlink)

JEP 260: Encapsulate Most Internal APIs

OpenJDK Jigsaw Project

Related blogs

Gear up for Java 9

Prepare for JDK 9

Looking at JDK 9 with Categories