Re: Unable to derive module descriptor for gradle-api-5.6.2.jar — Provider class moduleName=model-core not in module

Jochen Theodorou blackdrag at gmx.org
Sat Oct 12 19:26:21 UTC 2019


On 12.10.19 00:41, Plugins wrote:
> While trying to find a solution to what I lovingly call Gradle's
> „Anti-JPMS“ issue [1], I discovered that even if that one particular
> issue is worked around, Gradle then, frustratingly, presents yet another
> hurdle to developing with the JPMS! Specifically, it co-opts the
> META-INF/services mechanism to bundle a non-JAR file-spec-compliant
> services configuration file.
>
>
> That technically-inappropriate
> META-INF/services/org.codehaus.groovy.runtime.ExtensionModule entry in
> Gradle's gradle-api-{version}.jar file is used by Gradle to extend the
> Groovy language; which Gradle relies on. Apparently, that service entry
> extends Groovy with Java methods [2].

No idea what gradle uses here, but the standard mechanism uses now
META-INF/groovy/org.codehaus.groovy.runtime.ExtensionModule
(https://issues.apache.org/jira/browse/GROOVY-8480). So I assume Gradle
is there still on Groovy 2.4

[...]
> @AlanBateman? Please can you suggest what can be done to work around
> Gradle's moduleName=model-core „anti-JPMS“ blocker?

you can try upgrading to Groovy 2.5. Never tried that, no idea what
problems appear as part of that. This change in the extension module
handling is not the only one, hence the new version. Or you remove the
file and see what breaks. I think patching is out of question here...

bye Jochen


More information about the jigsaw-dev mailing list