Anouar di Kali
01/02/2024, 11:33 AMgradlew dokkaHTMLMultiModule
, the private methods are not being included.
Here is the Dokka configuration in the build.gradle.kts
file:
tasks.dokkaHtmlMultiModule.configure {
outputDirectory.set(layout.buildDirectory.dir("DokkaMoltiModuleDoc"))
}
tasks.withType<org.jetbrains.dokka.gradle.DokkaTask>().configureEach {
dokkaSourceSets {
configureEach {
includeNonPublic.set(true)
skipEmptyPackages.set(true)
}
}
}
Oleg Yukhnevich
01/02/2024, 12:50 PMAbstractDokkaTask
- because in multimodule there are some additional tasks created which extend AbstractDokkaTask
and not DokkaTask
2. you need to add this configuration for subprojects and not to root project - multiModule
task just aggregates results of running dokka in submodules
3. it's better to use documentedVisibilities
instead of includeNonPublic
Regarding point two, you can do it in 2 ways:
1. explicitly add configuration tasks.withType<AbstractDokkaTask>().configureEach {...}
in build scripts of submodules (via convention plugin for example - this is suggested way by Gradle)
2. in root project (near multiModule
task) add subprojects { tasks.withType<AbstractDokkaTask>().configureEach {...} }
to configure all submodules in one placeAnouar di Kali
01/02/2024, 1:40 PMDokkaTaskPartial
in sub-module Gradle build file like this :
// App/build.gradle.kts
import org.jetbrains.dokka.DokkaConfiguration.Visibility
...
tasks.withType<DokkaTaskPartial>().configureEach {
outputDirectory.set(layout.buildDirectory.dir("Partial"))
moduleName.set("Application")
dokkaSourceSets.configureEach {
documentedVisibilities.set(
setOf(
Visibility.PUBLIC,
Visibility.PRIVATE,
Visibility.PROTECTED,
)
)
skipEmptyPackages.set(true)
// other configurations...
}
}
Oleg Yukhnevich
01/02/2024, 1:41 PMDokkaTaskPartial
is also fine