Gradle not working on Jigsaw
Alan Bateman
Alan.Bateman at oracle.com
Thu Oct 20 14:37:03 UTC 2016
On 20/10/2016 15:27, Stephen Felts wrote:
> :
> Jython seems to be doing a setAccessible on a lot of methods. It catches SecurityException and ignores it. Of course, JDK9 throws a different exception so the code is broken.
> Further, the new exception is JDK9 only so the code needs to change to catch and ignore RuntimeException.
>
>
> Comment from Jython:
> Set public methods on package protected classes accessible so
> that reflected calls to the method in subclasses of the
> package protected class will succeed. Yes, it's convoluted.
Yeah, it seems to be hacking into a few sun.* classes during startup
(only seen with -Dsun.reflect.debugModuleAccessChecks=true) but it seems
to continue without side effect after that.
java.lang.reflect.InaccessibleObjectException: Unable to make public
abstract java.io.FileDescriptor sun.nio.ch.SelChImpl.getFD() accessible:
module java.base does not "exports sun.nio.ch" to unnamed module @31dadd46
at
java.base/jdk.internal.reflect.Reflection.throwInaccessibleObjectException(Reflection.java:414)
at
java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:198)
at
java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:192)
at java.base/java.lang.reflect.Method.setAccessible(Method.java:186)
at jnr.posix.JavaLibCHelper.<clinit>(JavaLibCHelper.java:92)
at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:37)
at jnr.posix.MacOSPOSIX.<init>(MacOSPOSIX.java:11)
at jnr.posix.POSIXFactory.loadMacOSPOSIX(POSIXFactory.java:99)
at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:66)
at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:38)
at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
at jnr.posix.LazyPOSIX.isatty(LazyPOSIX.java:205)
at org.python.core.Py.isInteractive(Py.java:1548)
at org.python.util.jython.run(jython.java:255)
at org.python.util.jython.main(jython.java:142)
java.lang.reflect.InaccessibleObjectException: Unable to make field
private final java.io.FileDescriptor sun.nio.ch.FileChannelImpl.fd
accessible: module java.base does not "exports private sun.nio.ch" to
unnamed module @31dadd46
at
java.base/jdk.internal.reflect.Reflection.throwInaccessibleObjectException(Reflection.java:414)
at
java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:198)
at
java.base/java.lang.reflect.Field.checkCanSetAccessible(Field.java:171)
at java.base/java.lang.reflect.Field.setAccessible(Field.java:165)
at jnr.posix.JavaLibCHelper.<clinit>(JavaLibCHelper.java:109)
at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:37)
at jnr.posix.MacOSPOSIX.<init>(MacOSPOSIX.java:11)
at jnr.posix.POSIXFactory.loadMacOSPOSIX(POSIXFactory.java:99)
at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:66)
at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:38)
at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
at jnr.posix.LazyPOSIX.isatty(LazyPOSIX.java:205)
at org.python.core.Py.isInteractive(Py.java:1548)
at org.python.util.jython.run(jython.java:255)
at org.python.util.jython.main(jython.java:142)
More information about the jigsaw-dev
mailing list