8

我正在尝试使用 Dokka 插件为 android Kotlin 应用程序生成 Javadoc。我将插件添加到我的 gradle 中:

classpath "org.jetbrains.dokka:dokka-gradle-plugin:0.9.15"

然后我按照项目说明进行了基本配置:

dokka {
    outputFormat = 'javadoc'
    outputDirectory = "$rootDir/docs"
    skipEmptyPackages = true
    noStdlibLink = true
}

我使用基本的 gradle 命令生成文档:

[user@linux AppDir]$ bash gradlew dokka

输出很好,但它包括来自 android 的多个目录或我添加到项目中的插件,例如:

android.R
android.support
com.google
com.crashlytics
.
.
.
etc.

如何跳过这些包?有没有办法只为我的 /app/scr/java 文件夹和我创建的文件生成扩展坞?任何帮助表示赞赏。

4

2 回答 2

2

Dokka 版本 0.9.16 将包含一个错误修复以从文档中删除生成的文件

在 0.9.15 版本中,以下提交似乎解决了“抑制 android.R 的输出和 dokka-android 中其他生成的东西”,但显然在suppresedFiles使用所需信息创建地图之后,它并没有真正用于过滤sourceSets


更新Dokka 0.9.16 已随修复程序一起发布,以及其他改进。

#224从文档中过滤掉 Android 生成的类

于 2017-12-10T19:09:39.270 回答
2

这是Dokka 0.9.16的一个工作示例:

task dokka(overwrite: true, type: org.jetbrains.dokka.gradle.DokkaAndroidTask) {
    outputFormat = 'javadoc'
    outputDirectory = "$buildDir/docs"

    // Do not create index pages for empty packages
    skipEmptyPackages = true

    //Do not output deprecated members. Applies globally, can be overridden by packageOptions
    skipDeprecated = false

    //No default documentation link to kotlin-stdlib
    noStdlibLink = false
}

如果您使用 Android,那么类型很重要:org.jetbrains.dokka.gradle.DokkaAndroidTask

不是DokkaTask但是DokkaAndroidTask

于 2018-04-25T08:40:01.127 回答