This message was deleted.
# plugin-development
s
This message was deleted.
v
Just in case you wonder, the issue I run into is that my Gradle plugin is split into several ones (base plugin + another that builds on top of base).
io.qameta.allure
=> dependsOn =>
io.qameta.allure-adapter-base
=> dependsOn =>
io.qameta.allure-base
Historically, I used
implementation(project(..))
dependencies across those modules, and it worked, however, it turns out precompiled script plugins do not generate accessors when
-base
is
implementation
dependency. Here’s the issue: https://github.com/allure-framework/allure-gradle/issues/84
GradleRunner#getPluginClasspath
does not really help since it includes all the runtime dependencies 😕
t
I usually publish my plugin to maven local, add that as a repo, and depend on it like it's any external dependency.
1
v
I ended up with adding the main project as
includeBuild
to a sandbox that builds the precompiled. The gotcha there is that
implementation("$id:$id.gradle.plugin")
does not work when using
includeBuild
, and dependencySubstitution does not help either (which is yet another issue 😂): https://github.com/allure-framework/allure-gradle/pull/97/files#diff-8526501554aa4e1e5fab26527313bd433dab89164723f7fa2bfe0867e2f27eb7R10-R13