问题描述
背景
经过大量研究和尝试,并寻求帮助,我成功地在 Jitpack 上使用 maven 发布了一个私有的 Github 存储库(编写为 here)。
所以,目前我放在 Jitpack 存储库中的文件只有这些:
问题
虽然依赖关系问题和 AAR 文件本身很好,我可以使用该库,但我注意到我无法找到一种方法将我在那里编写的内容作为 KDoc(如 JavaDocs,但对于 Kotlin)提供给任何使用
我的尝试
除了各种gradle任务,我还尝试了Android Studio本身的简单操作来制作。由于没有提及 KDoc,我使用了 Tools
->Generate JavaDocs
。
遗憾的是,它告诉我没有,而且确实报告了 here。
但即使它成功了,我也不知道如何将它与其他文件一起发布。
问题
我希望这是可能的,但是如何在 Jitpack 上使用 maven 生成并公开 KDoc?
解决方法
您需要使用 Dokka 来自动记录 Kotlin 项目。您可以在 this article 上找到 Dokka 的简要说明,并在需要时阅读文档。
使用 Gradle 插件
首选方式是使用插件块。
build.gradle.kts:
plugins {
id("org.jetbrains.dokka") version "1.4.32" }
repositories {
mavenCentral() }
插件添加了 dokkaHtml
、dokkaJavadoc
、dokkaGfm
和 dokkaJekyll
项目任务。
应用插件
Dokka 插件为每个输出格式创建 Gradle 配置
dokka${format}Plugin
的形式:
dependencies {
dokkaHtmlPlugin("org.jetbrains.dokka:kotlin-as-java-plugin:1.4.32") }
您也可以创建自定义 Dokka 任务并直接添加插件 内部:
val customDokkaTask by creating(DokkaTask::class) {
dependencies {
plugins("org.jetbrains.dokka:kotlin-as-java-plugin:1.4.32")
} }
请注意,dokkaJavadoc 任务只会正确记录单个 jvm源码集
要生成文档,请使用适当的 dokka${format} Gradle 任务:
./gradlew dokkaHtml
请参阅 Dokka Gradle 示例项目以获取示例。
确保在 com.android.library
之后应用 Dokka 并且
kotlin-android
。
buildscript {
dependencies {
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:${kotlin_version}")
classpath("org.jetbrains.dokka:dokka-gradle-plugin:${dokka_version}")
} } repositories {
mavenCentral() } apply(plugin= "com.android.library") apply(plugin= "kotlin-android") apply(plugin= "org.jetbrains.dokka")
dokkaHtml.configure {
dokkaSourceSets {
named("main") {
noAndroidSdkLink.set(false)
}
} }
官方 GitHub 存储库中的更多信息 - https://github.com/Kotlin/dokka 您可能也喜欢this article。