JDK-8181087 : Module system implementation refresh (6/2017 update)
  • Type: Enhancement
  • Component: core-libs
  • Sub-Component: java.lang.module
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2017-05-25
  • Updated: 2017-07-18
  • Resolved: 2017-06-17
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 10 JDK 9
10Fixed 9 b175Fixed
Related Reports
Relates :  
Relates :  
Description
The changes in this update:

- replace java.lang.module package description with more complete description of resolution

- Automatic-Module-Name JAR file attribute

- Add ModuleLayer.Controller.addExports

- Minor update to ModuleLayer.defineModules to make it clear that the function to map modules to class loaders cannot map modules to the boot or platform class loaders.

- Update ModuleLayer.defineModulesWithXXXX to specify how the class loaders created by these methods locate resources.

- Minor update to ClassLoader spec to clarify how the platform class loader delegates.

- Minor update to ServiceLoader spec to clarify how providers are located when modules in a layer are defined to a class loader.

- Minor update to ServiceLoader spec to specify that the static factory method must be explicit declared (meaning it is not inherited).

- Update ServiceLoader spec to more clearly specify when ServiceConfigurationError is thrown.

- Fix bug in ServiceLoader which caused an exception when a service type being overridden in a child layer (or where the same service type exists in two modules in the same layer).

- Fix bug in ServiceLoader to reject provider classes that define more than one factory method.

- Cleanup and expand ServiceLoader test coverage.

- Minor clean-up to ModuleBootstrap.boot to make it easier to read/maintain.

- Replace --permit-illegal-access with --illegal-acess=<value>.

- Refresh JCP technology summary docs page.

- Refresh java.lang.instrument package description, including migration to package-info.java.

- Remove (unused) code to add packages to modules.
Comments
FC extension request approved by Project Lead.
16-06-2017

FC Extension Request We need to update JDK 9 with the changes accumulated in the jigsaw/jake forest. This update has the API changes from the latest working-draft JPMS specification (JSR 376), and also the changes to open all packages that existed in JDK 8 so that code on the class path can perform illegal access on members of classes in these packages. There are tests to cover all the changes in this update. The proposal is to push the changes to jdk9/dev by June 16.
07-06-2017