vertx-gradle-plugin icon indicating copy to clipboard operation
vertx-gradle-plugin copied to clipboard

vertxRun fails with java.lang.NoClassDefFoundError: org/gradle/api/plugins/MavenPlugin

Open ahmedriza opened this issue 1 year ago • 3 comments

Thanks for this plugin. Just started to use it and ran into this error:

* What went wrong:
org/gradle/api/plugins/MavenPlugin
> org.gradle.api.plugins.MavenPlugin

* Try:
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Exception is:
java.lang.NoClassDefFoundError: org/gradle/api/plugins/MavenPlugin
        at com.github.jengelman.gradle.plugins.shadow.ShadowApplicationPlugin.apply(ShadowApplicationPlugin.groovy:43)
        at com.github.jengelman.gradle.plugins.shadow.ShadowApplicationPlugin.apply(ShadowApplicationPlugin.groovy)
...

I believe this is due to the old version of the Shadow plugin (6.1.0) being used which relies on the MavenPlugin: https://github.com/johnrengelman/shadow/blob/6.1.0/src/main/groovy/com/github/jengelman/gradle/plugins/shadow/ShadowApplicationPlugin.groovy#L43

Can we upgrade to the new verison of Shadow please? 8.1.1 is out. Thanks.

My Gradle version info:

------------------------------------------------------------
Gradle 8.1.1
------------------------------------------------------------

Build time:   2023-04-21 12:31:26 UTC
Revision:     1cf537a851c635c364a4214885f8b9798051175b

Kotlin:       1.8.10
Groovy:       3.0.15
Ant:          Apache Ant(TM) version 1.10.11 compiled on July 10 2021
JVM:          17.0.7 (Homebrew 17.0.7+0)
OS:           Mac OS X 13.3.1 aarch64

I tried manually updating the Shadow plugin to 8.1.1, but my local build of this plugin fails with:

Caused by: java.lang.RuntimeException: Please configure the `shadowJar` task to not add a classifier to the jar it produces
        at com.gradle.publish.PublishTaskShadowAction.manipulateVariants(PublishTaskShadowAction.java:37)

I guess things have changed in the Shadow land.

ahmedriza avatar May 09 '23 20:05 ahmedriza