On 12/11/2019 02:30, Plugins wrote:
Hi all,

I might have spoken too soon in my last October email [1]. Ever since,
I've
been having a hell of a time trying to get Gradle's so-called
„shaded“ API jar
to play nicely with the other modules in my JPMS-build-enabling Gradle
plugin [2]

For some reason, Gradle's generated artifact redundantly duplicates all
the
packages of two modules from the JDK: javax.xml and jdk.xml.dom.
The Gradle devs will know but I assume these are coming from the xml-apis-${version}.jar (Apache Xerces project). It's not clear, to me anyway, why these API classes are still being distributed in 2019. The XML processing API was added to Java SE 1.4, the XML stream API came a bit later. The XML APIs started out in Java SE as "standalone technologies" where they were in the JDK but could be upgraded by deploying a newer version with the endorsed standards override mechanism. It's possible, and probable, that developers have been deploying xml-apis on the class path and got lucky that it didn't cause problems. Anyway, none of this makes sense since Java SE 9 as both JSR-206 and JSR-173 ceased to be standalone technologies (see the final MR for both JSRs), and mechanism to upgrade them (the endorsed standards override mechanism) has been removed.

-Alan.

Reply via email to