Solving #ConcealedPackageConflicts

David M. Lloyd david.lloyd at redhat.com
Fri Sep 30 14:14:35 UTC 2016


By my analysis, the only possible and useful solution for 
#ConcealedPackageConflicts, other than rewriting how class loaders work, 
is to map non-automatic application (i.e. non-JDK) modules in the 
default layer each to their own class loader.  This also potentially 
solves (or provides to means to solve) #MultipleModuleVersions - if you 
take "multiple versions" to be defined as "two modules with the same 
package name", a definition which Red Hat rejects.

We (at Red Hat) know from years of experience that libraries and 
software in the wild generally won't have a problem with this from a 
compatibility perspective.  The widespread adoption of OSGi also proves 
this out, as many applications of OSGi include existing third-party 
libraries.

So, why not?
-- 
- DML


More information about the jigsaw-dev mailing list