Rita Curado
11/03/2020, 6:23 PMBig Chungus
11/03/2020, 6:40 PMBig Chungus
11/03/2020, 6:40 PMRita Curado
11/03/2020, 6:42 PMBig Chungus
11/03/2020, 6:43 PMBig Chungus
11/03/2020, 6:43 PMRita Curado
11/03/2020, 6:46 PMkotlin { // Kotlin Multiplatform plugin configuration
jvm()
js("customName")
}
val dokka by getting(DokkaTask::class) {
outputDirectory = "$buildDir/dokka"
outputFormat = "html"
multiplatform {
val customName by creating { // The same name as in Kotlin Multiplatform plugin, so the sources are fetched automatically
includes = listOf("packages.md", "extra.md")
samples = listOf("samples/basic.kt", "samples/advanced.kt")
}
register("differentName") { // Different name, so source roots must be passed explicitly
targets = listOf("JVM")
platform = "jvm"
sourceRoot {
path = kotlin.sourceSets.getByName("jvmMain").kotlin.srcDirs.first().toString()
}
sourceRoot {
path = kotlin.sourceSets.getByName("commonMain").kotlin.srcDirs.first().toString()
}
}
}
}
These namings customName
and differentName
are a bit confusing since I have commonMain, androidMaind and iosMain sources.
How can I split the documentation into that packages structure?Big Chungus
11/03/2020, 6:47 PMRita Curado
11/03/2020, 6:49 PMval dokka by tasks.getting(org.jetbrains.dokka.gradle.DokkaTask::class) {
outputDirectory = "$buildDir/dokka"
outputFormat = "html"
multiplatform {
val docs by creating { // The same name as in Kotlin Multiplatform plugin, so the sources are fetched automatically
includes = listOf("packages.md", "extra.md")
// samples = listOf("samples/basic.kt", "samples/advanced.kt")
includeNonPublic = false
skipDeprecated = false
reportUndocumented = false
skipEmptyPackages = true
}
register("differentName") { // Different name, so source roots must be passed explicitly
targets = listOf("common", "jvm", "native")
sourceRoot {
path = kotlin.sourceSets.getByName("commonMain").kotlin.srcDirs.first().toString()
platform = "common"
}
sourceRoot {
path = kotlin.sourceSets.getByName("androidMain").kotlin.srcDirs.first().toString()
platform = "jvm"
}
sourceRoot {
path = kotlin.sourceSets.getByName("iosMain").kotlin.srcDirs.first().toString()
platform = "native"
}
}
}
}
But it adds all in the same folder. So no separation between sourcesBig Chungus
11/03/2020, 8:37 PMRita Curado
11/03/2020, 8:40 PMAJ Alt
11/04/2020, 4:00 PMmultiplatform
block empty, which works fine: https://github.com/ajalt/clikt/blob/335a5192dad2f5b67c0ba114637c0fcd7166c584/clikt/build.gradle.kts#L87-L91Rita Curado
11/05/2020, 10:18 AM