Hi,

In this PR, looks like we changed our code to use BasicURLClassPath.
https://github.com/apache/tomee/pull/176

But while running under Java 11, I just realized, it produces exceptions

> java.lang.IllegalAccessException: class
> org.apache.openejb.loader.BasicURLClassPath cannot access class
> jdk.internal.loader.URLClassPath (in module java.base) because module
> java.base does not export jdk.internal.loader to unnamed module @157632c9
> at
> java.base/jdk.internal.reflect.Reflection.newIllegalAccessException(Reflection.java:361)
> at
> java.base/java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:591)
> at java.base/java.lang.reflect.Method.invoke(Method.java:558)
> at
> org.apache.openejb.loader.BasicURLClassPath.addJarsToPath(BasicURLClassPath.java:110)
> at
> org.apache.openejb.loader.ContextClassPath.addJarsToPath(ContextClassPath.java:39)
> at org.apache.openejb.server.Main.main(Main.java:126)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
> at
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:566)
> at org.apache.openejb.cli.MainImpl.main(MainImpl.java:149)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
> at
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:566)
> at org.apache.openejb.cli.Bootstrap.main(Bootstrap.java:189)
>

Does someone know why we have done that?
--
Jean-Louis Monteiro
http://twitter.com/jlouismonteiro
http://www.tomitribe.com

Reply via email to