Hi Otávio and folks, That is the issue: https://github.com/apache/tomee/blob/master/container/openejb-loader/src/main/java/org/apache/openejb/loader/BasicURLClassPath.java#L110
Seems that we need to change the strategy to work like it: https://github.com/apache/tomee/blob/master/container/openejb-loader/src/main/java/org/apache/openejb/loader/BasicURLClassPath.java#L98-L101 I did some changes, but it result in a lot of error, I'm trying see if we can reuse that CustomizableURLClassLoader to be like a "principal" TomEE's ClassLoader. But, the BasicURLClassPath is extended for others: https://github.com/apache/tomee/blob/master/container/openejb-loader/src/main/java/org/apache/openejb/loader/SystemClassPath.java#L86 https://github.com/apache/tomee/blob/master/container/openejb-loader/src/main/java/org/apache/openejb/loader/TomcatClassPath.java#L208-L230 (not sure if should case same issue that otavio got, but probably yes) So, I don't have a solution for it now, still trying understand how TomEE manipulate that classloader. Thoughts? Em seg, 4 de mar de 2019 às 12:30, Daniel Cunha <daniels...@apache.org> escreveu: > Yeah.. I was seeing that exactly now. this option was dropped. > > Em seg, 4 de mar de 2019 12:23 PM, Otávio Gonçalves de Santana < > osant...@tomitribe.com> escreveu: > >> That does not work, there are changes at ClassLoader since Java 9. That >> became forbidden at Java 11, because of these changes. >> >> >> On Mon, Mar 4, 2019 at 12:03 PM Daniel Cunha <daniels...@apache.org> >> wrote: >> >> > Hi Otávio, >> > >> > To fix it using jdk flags, you can use --illegal-access >> > Try it. >> > >> > Em seg, 4 de mar de 2019 às 11:54, Otávio Gonçalves de Santana < >> > osant...@tomitribe.com> escreveu: >> > >> > > Now, I got a new error: >> > > >> > > Illegal reflective access by >> > org.apache.openejb.loader.BasicURLClassPath$4 >> > > >> > > >> > >> (file:/tmp/temp14662460932513193953dir/root/lib/openejb-loader-8.0.0-SNAPSHOT.jar) >> > > to field java.net.URLClassLoader.ucp >> > > >> > > >> > > On Mon, Mar 4, 2019 at 10:49 AM Otávio Gonçalves de Santana < >> > > osant...@tomitribe.com> wrote: >> > > >> > > > I got the idea, I'll work on it. >> > > > Thank you. >> > > > >> > > > On Mon, Mar 4, 2019 at 10:47 AM Jonathan Gallimore < >> > > > jonathan.gallim...@gmail.com> wrote: >> > > > >> > > >> It sounded like you could make it work with a compiler config >> change >> > > (not >> > > >> a >> > > >> code change) in Java 11 - is that correct? >> > > >> >> > > >> If so, can't you just provide that config only when running the >> build >> > on >> > > >> Java 11? >> > > >> >> > > >> Something like: >> > > >> >> > > >> <profiles> >> > > >> <profile> >> > > >> <id>java-11</id> >> > > >> <activation> >> > > >> <jdk>11</jdk> >> > > >> </activation> >> > > >> <build> >> > > >> <plugins> >> > > >> <plugin> >> > > >> <artifactId>maven-compiler-plugin</artifactId> >> > > >> <configuration> >> > > >> <compilerArgs> >> > > >> <arg>--add-modules</arg> >> > > >> <arg>jdk.internal.loader</arg> >> > > >> </compilerArgs> >> > > >> </configuration> >> > > >> </plugin> >> > > >> </profile> >> > > >> </profiles> >> > > >> >> > > >> (totally not tested...) >> > > >> >> > > >> Does that make sense? The failover artifacts themselves are simply >> > > >> deployed >> > > >> and run as part of a test suite, so we don't ship them as part of >> > TomEE >> > > >> itself. Its desirable to run the itests on both Java 8 and 11 to >> see >> > if >> > > >> there are any issues. >> > > >> >> > > >> Jon >> > > >> >> > > >> On Mon, Mar 4, 2019 at 1:27 PM Otávio Gonçalves de Santana < >> > > >> osant...@tomitribe.com> wrote: >> > > >> >> > > >> > Hey JonG. >> > > >> > Could you explain more about it? >> > > >> > Do you mean, create a profile to skip this project such as >> failover. >> > > >> > >> > > >> > I’ve checked some options such as redesign the classpath and >> create >> > > >> wrapper >> > > >> > the BasicURLClass. Both with a huge change of code. >> > > >> > >> > > >> > <profile> >> > > >> > <id>skip-java-11</id> >> > > >> > <modules> >> > > >> > <module>failover</module> >> > > >> > </modules> >> > > >> > </profile> >> > > >> > >> > > >> > >> > > >> > >> > > >> > On Fri, Mar 1, 2019 at 5:19 PM Jonathan Gallimore < >> > > >> > jonathan.gallim...@gmail.com> wrote: >> > > >> > >> > > >> > > If that's just for itests, I'd be inclined to try creating a >> > profile >> > > >> to >> > > >> > add >> > > >> > > that where the Java version is >8. >> > > >> > > >> > > >> > > What do you think? >> > > >> > > >> > > >> > > Jon >> > > >> > > >> > > >> > > On Fri, Mar 1, 2019 at 6:16 PM Otávio Gonçalves de Santana < >> > > >> > > osant...@tomitribe.com> wrote: >> > > >> > > >> > > >> > > > Hey guys >> > > >> > > > >> > > >> > > > I'm working to make the tests compatible with both Java 8 and >> > Java >> > > >> 11 >> > > >> > > > version. >> > > >> > > > >> > > >> > > > >> > > >> > > > Right now, I'm at the failover >> > > >> > > > <https://github.com/apache/tomee/tree/master/itests/failover >> > >> > > >> project >> > > >> > > that >> > > >> > > > has this issue: >> > > >> > > > >> > > >> > > > 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 >> > > >> > > > @4c6e276e >> > > >> > > > at >> > > >> > > > >> > > >> > > >> > > >> > >> > > >> >> > > >> > >> java.base/jdk.internal.reflect.Reflection.newIllegalAccessException(Reflection.java:361) >> > > >> > > > >> > > >> > > > >> > > >> > > > There are two ways to solve it; >> > > >> > > > >> > > >> > > > - the first one is using the filemodule-info.java >> > > >> > > > - Using the add-module argument at maven. >> > > >> > > > >> > > >> > > > >> > > >> > > > <plugin> >> > > >> > > > <artifactId>maven-compiler-plugin</artifactId> >> > > >> > > > <configuration> >> > > >> > > > <compilerArgs> >> > > >> > > > <arg>--add-modules</arg> >> > > >> > > > <arg>dk.internal.loader</arg> >> > > >> > > > </compilerArgs> >> > > >> > > > </configuration></plugin> >> > > >> > > > >> > > >> > > > >> > > >> > > > However, both make unavailable the situation to run Java 8. >> > > >> > > > >> > > >> > > > I still working to solve it. >> > > >> > > > >> > > >> > > > On Fri, Mar 1, 2019 at 2:11 PM Jonathan Gallimore < >> > > >> > > > jonathan.gallim...@gmail.com> wrote: >> > > >> > > > >> > > >> > > > > Killed of the builds and forced a new one. >> > > >> > > > > >> > > >> https://ci.apache.org/builders/tomee-trunk-ubuntu-jvm8/builds/1048 >> > > >> > > > > >> > > >> > > > > Jon >> > > >> > > > > >> > > >> > > > > On Fri, Mar 1, 2019 at 4:28 PM j4fm < >> > james.m...@my-managed.net> >> > > >> > wrote: >> > > >> > > > > >> > > >> > > > > > Ah yeah that makes sense. >> > > >> > > > > > >> > > >> > > > > > It won't let me stop the current stuck build. Would you >> be >> > > able >> > > >> > to? >> > > >> > > > > > >> > > >> > > > > > From the logs it looks like it succeeds up until the >> point >> > > it's >> > > >> > > > frozen... >> > > >> > > > > > I'm not sure what's up with it. Have you seen it freeze >> > like >> > > >> this >> > > >> > > > > before? >> > > >> > > > > > Maybe it's an issue with the CI agent instead? >> > > >> > > > > > >> > > >> > > > > > >> > > >> > > > > > >> > > >> > > > > > -- >> > > >> > > > > > Sent from: >> > > >> > > > > > >> > > >> http://tomee-openejb.979440.n4.nabble.com/TomEE-Dev-f982480.html >> > > >> > > > > > >> > > >> > > > > >> > > >> > > > >> > > >> > > >> > > >> > >> > > >> >> > > > >> > > >> > >> > >> > -- >> > Daniel "soro" Cunha >> > https://twitter.com/dvlc_ >> > >> > -- Daniel "soro" Cunha https://twitter.com/dvlc_