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