-
CSR
-
Resolution: Approved
-
P2
-
minimal
-
-
Java API, Other
-
SE
Summary
Module system implementation refresh (4/2017)
Problem
This CCC tracks updating the module system introduced by JEPs 200/260/261/282 via CCC-8142968, refreshed by CCC-8154956, CCC-8169069, CCC-8173393, CCC-8173393, CCC-8174823 and several other smaller CCCs.
This refresh proposes to update JDK 9 to align with the most recent proposals in JSR 376.
Solution
A summary of the changes in this update are:
Move java.lang.reflect.{Module,Layer} to java.lang.{Module,ModuleLayer}. (#MoveModuleAndLayerClasses on the JSR 376 issues list, see attached).
Revise the algorithm that computes the names of automatic modules so that it preserves digits at the end of module names (updated proposal #VersionsInModuleNames in JSR 376).
Clarify ModuleDescriptor.Builder.mainClass to make it clearer that it adds the package of the main class to the module.
Update JVM TI and java.lang.instrument to allow for the potential for unmodifable modules.
Specification
The specdiff of the API changes is attached.
The specdiff for the update to the JVM TI spec is also attached.
- csr for
-
JDK-8177530 Module system implementation refresh (4/2017)
- Resolved
- relates to
-
CCC-8174823 Module system implementation refresh (3/2017)
- Closed