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

Reply via email to