Hi there,
I’m currently working on a plugin which should bring P2 support to Gradle. I know, that the dependency resolution process of Gradle is not meant to be extended. But I already had a first successful run in a test environment.
How ever, after I pushed the plugin to the Gradle Plugin portal and added it to a distinct project, the resolution process did fail. Because I wanted to avoid to write my own metadata types (which seems rather complex), I reused the DefaultMutableIvyModuleResolveMetadata
class from the Gradle internals. As mentioned before this was not a Problem in my test run. But when I tried to build my real project, i got following exception:
java.lang.NoSuchMethodError: org.gradle.internal.component.external.model.DefaultMutableIvyModuleResolveMetadata.<init>(Lorg/gradle/api/artifacts/ModuleVersionIdentifier;Lorg/gradle/api/artifacts/component/ModuleComponentIdentifier;)V
This is the constructor I use to create the metadata object. Can someone explain my, why it’s not accessible to Gradle? It’s a public constructor of a public class.