Opened 3 years ago

Last modified 4 months ago

#423 new defect

Changes for Java9

Reported by: Evenson Not Org Owned by:
Priority: major Milestone: 1.6.1
Component: java Version:
Keywords: java-9 Cc:
Parent Tickets:

Description (last modified by Evenson Not Org)

  • JDK9

Statement of removal of source/target options

System classloaders no longer extend URLClassLoader

Extension mechanism removed; 'jrt' scheme introduced

"Existing standard APIs that return URL objects to name class and
resource files inside the run-time image will, as noted above, now
return jrt URLs"

The State of the Module System


Attachments (1)

jvm9-20161122a.patch (1.4 KB) - added by Evenson Not Org 3 years ago.

Download all attachments as: .zip

Change History (5)

Changed 3 years ago by Evenson Not Org

Attachment: jvm9-20161122a.patch added

comment:1 Changed 3 years ago by Evenson Not Org

From this overview of openjdk9 changes <>. Most notably the bit about the java.lang.reflect setAccessible() method being considerably locked down will mean a fair amount of work to modify existing code.

Changes due primarily to the introduction of the Java Platform Module System may affect code which

  • expects that applying the public modifier to an API element guarantees that the element will be everywhere accessible, or
  • expects to use ClassLoader::getResource* and Class::getResource* methods to read JDK-internal resources, or
  • expects to use the java.lang.reflect.AccessibleObject::setAccessible method to gain access to members of packages that are not exported by their defining modules, or
  • as JVM TI agents expect to be able to instrument Java code that runs early in the startup of the run-time environment.

Existing code that invokes ClassLoader::getSystemClassLoader and blindly casts the result to URLClassLoader, or does the same thing with the parent of that class loader, might not work correctly.

Existing custom class loaders that delegate directly to the bootstrap class loader might not work correctly; they should be updated to delegate to the extension class loader.

Last edited 3 years ago by Evenson Not Org (previous) (diff)

comment:2 Changed 3 years ago by Evenson Not Org

Description: modified (diff)

comment:3 Changed 3 years ago by Evenson Not Org


Ticket retargeted after milestone closed

comment:4 Changed 4 months ago by Evenson Not Org


Ticket retargeted after milestone closed

Note: See TracTickets for help on using tickets.