On 26/10/2016 16:53, Thomas Watson wrote:

:

If you are mapping your own custom class loaders using
Layer.defineModules(Configuration, Function<String, ClassLoader>) then you
need to be sure to override the method ClassLoader.findResource(String,
String) for your custom class loaders when running on Java 9.  Otherwise
you will find Class.getResource always returning null.  Sorry if this is
widely known here, but it surprised me.

(I've changed the subject line as this is not related to the patch to add support for naming class loaders).

If you are upgrading an existing class loader to support load of classes and resources from modules then you need to override the 2-arg findClass and 2-arg findResource methods. Both methods do have javadoc to say this (but you are right, you have to go look for it). Note that there is deliberately no subtype of ClassLoader defining these two as abstract methods, ditto for an interface that would add this support.

-Alan

Reply via email to