KDoc / Dokka:忽略子类中的继承方法

KDoc / Dokka: Ignore inherited methods in subclass

我正在使用 KDoc/Dokka 为 android 库生成文档。

我有一个自定义视图,它扩展了 LinearLayout

问题是 LinearLayout 包含数百个 public 方法。 Dokka 为所有这些方法生成空文档,即使我没有在自己的代码中使用或覆盖它们。

这完全掩盖了我自己的任何方法,并使文档几乎毫无用处。

如何防止 dokka 为继承的方法生成文档?

目前不支持,可能我们会添加一些标志来打开它on/off。

你可以关注这个问题:https://github.com/Kotlin/dokka/issues/1501

@andrzej-ratajczak的回答可以使用以下内容

pluginsMapConfiguration.set(
  ["org.jetbrains.dokka.base.DokkaBase": """{ "separateInheritedMembers": true}"""]
)

这里是我自己的模块的例子

dokkaHtml {
    moduleName = "${project.name}"

    dokkaSourceSets {
        configureEach {
            // Suppress a package
            perPackageOption {
                // will match all packages and sub-packages
                matchingRegex.set(".*\.internal.*")
                suppress.set(true)
            }

            // separate inherited members to avoid polluting our public API
            // https://github.com/Kotlin/dokka/issues/1501
            pluginsMapConfiguration.set(
                    ["org.jetbrains.dokka.base.DokkaBase": """{ "separateInheritedMembers": true}"""]
            )

        }
    }
}