Last month, Twitter voted No on the Public Review Ballot of JSR 376 (Java Platform Module System). Since then, the JSR 376 Expert Group (EG) has been hard at work to clarify several ambiguities (#RestrictedKeywords, #CompilationWithConcealedPackages, and #ResolutionAtCompileTime) and make a few important changes (#ModuleNameInManifest and Relax Strong Encapsulation) in the revised JSR 376 specification.
As a result of this work, we have decided to vote Yes on the JSR 376 Public Review Reconsideration Ballot.
Relaxing strong encapsulation by default should help adoption of JDK 9, at least in the short-term, by removing an important barrier. There is now greater consensus among the EG that, with these changes, the JPMS is ready for release in JDK 9.
We would like to thank the EG members for all their hard work during the past month and a half to improve the JPMS specification. We have been encouraged by the progress that has been made but we understand that some important features (#AvoidConcealedPackageConflicts, in particular) will require a lot more discussion and due-diligence than the JDK 9 timeframe allows. We look forward to the first version of JPMS providing a good basis for such features to be worked on and introduced in future JDK releases.
Did someone say … cookies?