On Thu, Jul 19, 2018 at 1:12 PM Alan Bateman <alan.bate...@oracle.com> wrote: > > On 19/07/2018 16:27, David Lloyd wrote: > > : > > When running on Java 9 or later, this code relies on being able to > > reference java.se, and more importantly, all of the modules that it > > includes, which worked OK on 9 and 10 but fails on 11. When running > > on Java 8, it uses the default parent class loader to load the > > relevant classes and resources. > > > I think this needs a bit more context. The first part seems to be about > enumerating the modules in java.se which doesn't need java.se in the > boot layer. I can't quite connect that to the second part which seems to > be about the default class loader for delegation (which didn't change in > JDK 9 so I can't see the 8 vs. 9 issue). Is this something with the > JBoss module system where it wants to do direct delegation to the > modules in the boot layer?
Right JBoss Modules loads and depends on JPMS modules by name. So without the ability to load java.se by default from a classpath JAR, I can't boot the same way on Java 8 as I do on Java 9 anymore. I'm thinking about a workaround where we no longer use java.se as a default dependency, but that's a compatibility breaker so it needs a "clever" solution. It would be nicer if I could just select modules to add from my boot JAR manifest (or some other similar solution that is implicitly ignored on Java 8). -- - DML