Classloading with multiple parent layers JDK11 vs JDK14

Alan Bateman Alan.Bateman at oracle.com
Sat Apr 18 07:06:42 UTC 2020


On 17/04/2020 21:11, Alex Sviridov wrote:
> Hi all,
>   
> I have the following layers:
>   
> LayerA (moduleA)                   LayerB (moduleB)
>               |_____________________|
>                                   |
>                     LayerC(moduleC)
>   
> LayerC has two parent layers layerA and LayerB and moduleC requires moduleA
> and moduleB. When I start my application with JDK 11/14 I get no resolving errors
> and everything is ok. However, when I use JDK 11 in moduleC when I use
> application I get  java.lang.NoClassDefFoundError moduleB.Foo.class,
> when I run with JDK 14 I don’t get such exception. The JDK I use listed
> below.
>
Is moduleB an automatic module? If so then you are probably running into 
JDK-8211825 [1].

-Alan.

[1] https://bugs.openjdk.java.net/browse/JDK-8211825


More information about the jigsaw-dev mailing list