Closed psibre closed 6 years ago
This was not caught before, since in the functional testing environment, the leaked groovy-all
doesn't clash with the local version in Gradle.
Moreover, various internal voicebuilding projects resolved the plugin from the buildscript classpath
using a buildSrc
submodule containing this repository.
Consequently, this bug can be worked around by running
$ git submodule add https://github.com/marytts/gradle-marytts-voicebuilding-plugin.git buildSrc
or some equivalent hack.
As it turns out, the issue persists when the plugin is resolved from the Gradle plugins portal, but not if it is resolved from Bintray.
As a workaround, use this in a consuming project's settings.gradle
:
pluginManagement.repositories {
maven {
url 'https://dl.bintray.com/marytts/marytts'
}
gradlePluginPortal()
}
So this issue is actually a side-effect of the manner in which the different plugin publishing methods insert dependency exclusions in the generated POMs. v5.3.1 does not solve this issue when resolving from the Gradle plugin portal, and using the workaround of resolving the plugin from Bintray works just as well with v5.3.
But v5.3.2 solves this issue.
groovy-all
leaks into the classpath from a transitive dependency:This happens despite excluding it from the immediate
marytts-runtime
dependency!As a result, applying this plugin at v5.3 causes fatal errors when the Gradle Worker API is invoked:
[...]