Slackbot
05/04/2023, 10:30 AMAdam
05/04/2023, 10:32 AMRoot project 'dokkatoo-example'
+--- Project ':childA'
+--- Project ':childB'
\--- Project ':docs' (depends on :childA and :childB)
Each subproject needs to provide the following files:
• ./build/dokka-module/<format>/...
- a module directory
• <format>-module-descriptor.json
- a single configuration file
• Dokka Plugins classpath - JAR files were used to build the subproject’s dokka-module/<format>
I’ve created a Configuration (resolvable=false,consumed=true) for each of the above.
And then :docs
has resolvable Configurations in order to execute the Dokka Generator task
• all `dokka-module/<format>`s from other subprojects
• all <format>-module-descriptor.json
files from other subprojects
• Dokka Plugins classpath
• Dokka Plugins, without transitive dependencies
• Dokka Generator classpath (which is Dokka Plugins + Dokka Generator)
All of these extendFrom() a base dokkatoo
Configuration, so actually in the build script it’s succinct.
plugins {
id("dev.adamko.dokkatoo")
}
dependencies {
dokkatoo(projects(":childA"))
dokkatoo(projects(":childB"))
}
However, every Configuration is specific per format. There are 4 output formats at the moment (HTML, Javadoc, Jekyll, Markdown), so there are 4 times as many incoming and outgoing Configurations.Vampire
05/04/2023, 11:01 AMAdam
05/04/2023, 6:08 PMAdam
05/04/2023, 6:08 PMartifactView {}
and specifying the attributes?Vampire
05/04/2023, 6:38 PM