Beyond Jigsaw
summary
Java 9’s JPMS (Jigsaw) actually produces a 12 MB runtime image via jlink and enforces strong encapsulation, services via ServiceLoader, and module-info static bindings, but practical work shows rough edges: Maven requires module-info in src/main not tests, JUnit 5 can't load service providers in tests so service-based code fails unit testing, reflection needs opens or breaks and future JVMs will block it, automatic-module names sometimes collide (artifactId → automatic module name collision), Lombok/Spock/testcontainers issues force dropping module-info in a commercial project.
AI-written summary · about
related talks
01h 02mJava 9 Modularity in Action
49m55 New Features in JDK 9
59mJigsaw is ready to kill the Java classpath
51mThe Java 9 Module System Beyond The Basics
47m9 Lifes of JAVA 9
48mThe Java Module System in practice
51mJava Modularity: Life After Java 9
49mTo JAR Hell And Back - A Live Migration to the Java 9 Module System
