On 13/07/2016 12:47, David M. Lloyd wrote:


Isn't that what this entire thread is about? And also, what the whole #ReflectiveAccessToNonExportedTypes issue is about?
I think that's a good question, esp as some frameworks allow for annotations or configuration on non-public types or members. The `exports dynamic` proposal on the #ReflectiveAccessToNonExportedTypes thread exports the package at runtime and so allows the slimy setAccessible(true) to break in. In the very long term then setAccessible needs to go away of course but I do think non-public types in non-exported packages is part of the discussion too.

If not, consider this the official report that dozens if not hundreds of such frameworks are broken under Java 9. I have been bringing it up for many months, and this is a result of testing, not of guesswork.
It would be better to bring along some specific examples so that they can be studied. I would expect these frameworks, and consumers of, to work in JDK 9 as they did with JDK 8 assuming they aren't dependent on JDK-internal APIs (or other compatibility issues that we've listed in the JEPs). It's when consumers are migrated to explicit modules that it gets tricky as the existing frameworks don't yet know about the updated accessibility landscape yet.

-Alan

Reply via email to