The critical missing pieces and a path forward

David M. Lloyd david.lloyd at
Mon May 8 16:38:07 UTC 2017

On 05/08/2017 09:57 AM, mark.reinhold at wrote:
 > [...]
> This module system loads application modules into a single class loader
> by default so that developers have one less behavioral difference to
> worry about as they upgrade their components to explicit modules.  An
> early prototype did load every module into its own loader by default.
> With that we found that a fair bit of existing code -- not just code in
> the JDK itself -- is written assuming that the grandparent of its loader
> is the boot loader, that its loader (or perhaps its loader's parent) is
> the thread-context loader, that code in nearby modules is in the same
> loader, and so on.

In addition to being an unusual time to suddenly start worrying about 
compatibility, this is very surprising to me as we have not seen this, 
including at a time when our main middleware product completely dropped 
hierarchical class loading back a number of years ago during Java 6 days 
(which is when I would have expected to see these problems crop up).  Do 
you have any public examples you can cite?


More information about the jpms-spec-observers mailing list