Open ge0ffrey opened 2 years ago
To reproduce:
git clone https://github.com/ge0ffrey/jbake.git
cd jbake
git checkout use-gradle-to-build-maven-plugin
./gradlew clean build
I get
Execution failed for task ':jbake-maven-plugin:generateMavenPluginDescriptor'.
> class com.thoughtworks.qdox.model.impl.DefaultJavaPackage can not implement com.thoughtworks.qdox.model.JavaPackage, because it is not an interface (com.thoughtworks.qdox.model.JavaPackage is in unnamed module of loader org.gradle.internal.classloader.Vis
Related discussion: https://groups.google.com/g/jbake-dev/c/_3c5P9bcW2E
Hey @ge0ffrey thanks for the report. I will see what I can do but probably not before next week. In the meantime if you can provide a PR to fix this, I'm happy to review that.
I've looked into this. It looks like a plugin classpath conflict issue. maven-plugin-development plugin depends on com.thoughtworks.qdox:qdox:2.0-M5` but several other plugins in your build depend on version 1.12.1. In order to fix this in the jbake build you would need to remove those other plugins. In order to fix this in maven-plugin-development I need to relocate all plugin dependencies. I can try to look into this next week.
In the meantime I've reported this as a bug in Gradle: https://github.com/gradle/gradle/issues/19457
@ge0ffrey one way to work around this is adding id 'de.benediktritter.maven-development-plugin' version '0.3.1' apply false
to the plugins block of the root build script and doing that before the sdkman and github release plugins are applied. This will fix the issue when calling tasks from maven-plugin-development but it may cause issues with the sdkman and/or github releases plugins.
I am getting this exception when building the jbake maven plugin through gradle with this plugin:
No qdox in our dependencies or even in our dependency tree, this is wierd.
Full stacktrace: