FYI. "All proxy classes are not open for reflective access in Java SE 16."

See also https://www.oracle.com/java/technologies/javase/16-relnotes.html

core-libs/java.lang:reflect
➜ Proxy Classes Are Not Open for Reflective Access
All proxy classes are not open for reflective access in Java SE 16.

Prior to Java SE 16, if java.lang.reflect.Proxy was used to implement only 
public exported proxy interfaces, the proxy class was generated in an unnamed 
module which was open for reflective access. In Java SE 16, the proxy class is 
generated in an exported package in a named module. Programs that assume the 
private members of a proxy class can be made accessible via setAccessible(true) 
will fail with InaccessibleObjectException. Proxy classes are already defined 
in dynamic modules in other cases since Java SE 9. Such programs would already 
fail when it calls setAccessible(true) to those proxy classes prior to this 
change.

On 2021/06/13 09:07:01, Daniel Sun <sun...@apache.org> wrote: 
> Hi all,
> 
>    I created a branch[1] to try running tests with JDK16, and I found 39 
> tests failed[2]. If somebody have some spare time, let's look into the issues 
> and try to fix them together.
> 
> [1] https://github.com/apache/groovy/tree/danielsun/tweak-build
> [2] https://travis-ci.com/github/apache/groovy/jobs/513334181
> 
> Cheers,
> Daniel Sun
> 

Reply via email to