Gradle 6.8.2 --> gradle-8.2.1: java.lang.NoClassDefFoundError: org/gradle/api/plugins/MavenPlugin

terasology, a minecraft inspired game written in java, uses a library called “gestalt”, the libraries android build fails when upgrading gradle from 6.8.2 to 8.2.1, with the following error (this source: GitHub - soloturn/gestalt: A family of libraries providing a variety of core capabilities for use by games and game engines. )

❯ gradle --stacktrace
A problem occurred configuring project ':gestalt-android'.
> Failed to notify project evaluation listener.
   > org/gradle/api/plugins/MavenPlugin
* Exception is:
org.gradle.api.ProjectConfigurationException: A problem occurred configuring project ':gestalt-android'.
...
Caused by: org.gradle.internal.event.ListenerNotificationException: Failed to notify project evaluation listener.
        at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:111)
...
Caused by: java.lang.NoClassDefFoundError: org/gradle/api/plugins/MavenPlugin
        at com.android.build.gradle.internal.variant.VariantHelper.setupArchivesConfig(VariantHelper.java:47)
        at com.android.build.gradle.internal.LibraryTaskManager.createBundleTask(LibraryTaskManager.java:420)
        at com.android.build.gradle.internal.LibraryTaskManager.doCreateTasksForVariant(LibraryTaskManager.java:349)
        at com.android.build.gradle.internal.TaskManager.createTasksForVariant(TaskManager.java:487)
        at com.android.build.gradle.internal.TaskManager.createTasks(TaskManager.java:405)
        at com.android.build.gradle.internal.plugins.BasePlugin.createAndroidTasks(BasePlugin.java:595)
        at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:82)
        at com.android.build.gradle.internal.plugins.BasePlugin.lambda$createTasks$10(BasePlugin.java:498)
        at com.android.build.gradle.internal.crash.CrashReporting$afterEvaluate$1.execute(crash_reporting.kt:37)
        at com.android.build.gradle.internal.crash.CrashReporting$afterEvaluate$1.execute(crash_reporting.kt)
        at org.gradle.configuration.internal.DefaultUserCodeApplicationContext$CurrentApplication$1.execute(DefaultUserCodeApplicationContext.java:123)
        at org.gradle.configuration.internal.DefaultListenerBuildOperationDecorator$BuildOperationEmittingAction$1.run(DefaultListenerBuildOperationDecorator.java:171)


You are using a version of Android Gradle Plugin that is not compatible with Gradle 8.
The class it tries to use was removed.