Few questions

Alan Bateman Alan.Bateman at oracle.com
Sat Nov 26 14:28:12 UTC 2016


On 26/11/2016 11:41, Jochen Theodorou wrote:

> On 25.11.2016 23:21, Michał Zegan wrote:
>> Well, I specifically mean setAccessible usage between modules.
>
> If your code really requires setAccessible it is going to break with 
> jigsaw. 
To be more specific, it will be a problem for code that attempts to use 
setAccessible to break into JDK classes (aside from jdk.unsupported then 
the JDK modules don't open any packages for deep reflection).


> multiple versions of the same module can be done... kinda... Just not 
> at compile-time. You will be required to handle all the layers and 
> read edges yourself. At compile-time jigsaw does not allow multiple 
> versions of the same module - not even two distinct modules that use 
> the same packages (I forgot if that was really only for the exported 
> packages, or if the non-exported count as well, or if them counting as 
> well was/is a bug).
The rule is that a module m can't read two or modules that export the 
same package to m. If you are doing dynamic configuration and using the 
layer APi then you usually don't need to do anything with "read edges". 
Applications or libraries doing code generation or using method handles 
may need to but they are advanced cases.

-Alan


More information about the jigsaw-dev mailing list