I’ve written a gradle plugin which I want to publish to our artifactory.
Currently my custom plugin residence in the buildSrc/ dir.
My root build.gradle.kts can apply it easily with:
import my.package.CustomExtension
apply {
plugin("my.awesome.plugin")
}
configure<CustomExtension> {
// Configuraiton of my extensions
}
That works.
Now I want to apply the artifactory plugin to my custom plugin.
The only thing I’ve added to my buildSrc/build.gradle is:
plugins {
kotlin("jvm") version("1.2.10")
id("java-gradle-plugin")
id("com.jfrog.artifactory") version "4.6.0" // <- This was newly added
}
artifactory { // <- This was newly added
}
And here is the problem. If I try to build now I got always
Unresolved reference: artifactory
The problem don’t exist if I apply it to my root build.gradle.kts.
So I assume that it is a “issue” with the buildSrc/ dir somehow…
How can I solve that?
But I ask me even more if the buildSrc/ the right directory to build a custom plugin?
If not, how can I provide a “sample” how to use my plugin?
Currently my root build.gradle.kts shows exactly how to use it. And I can easily “test” it (just by running my custom task).
But if I put it into a different dir (and apply it as a module) like plugin/ my root build.gradle.kts can’t resolve it anymore.
I’ve tried it here also with a buildscript-setup. Without success ![]()
So basically I’ve two questions:
- Is the
buildSrc/the correct dir for developing custom plugins? - How can I create a “sample” (or consumer) of the plugin while developing so I can make sure everything works correctly?
Thanks
![]()