禁止Dokka投诉"没有com.foo.Bar $ toString()"?

时间:2017-12-09 04:53:04

标签: inheritance documentation kotlin gradle-plugin kotlin-dokka

我使用Gradle Dokka插件版本0.9.16-eap-1为一些Kotlin代码生成文档。

我没有破坏窗口类型的人,因此有点沮丧的是,插件为类生成了大量的消息,我没有明确地记录了一个被覆盖的方法,该方法已在基类中充分记录,例如

package com.foo
/**
 * A silly class to demonstrate silliness.
 */
class Bar : java.io.InputStream() {
    override fun read() = -1
    override fun toString() = "BAZ!"
}

对于这类Dokka的训斥:

No documentation for com.foo.Bar$read() (Bar.kt:6)
No documentation for com.foo.Bar$toString() (Bar.kt:7)

这有点单调乏味,因为我不想用复制粘贴文档冗余地冗余地记录所有内容。

查看Dokka README.md,我看到的唯一相关配置选项是:

dokka {
    ...
    // Emit warnings about not documented members. Applies globally, also can be overridden by packageOptions
    reportNotDocumented = true 
    ...
    // Allows to customize documentation generation options on a per-package basis
    // Repeat for multiple packageOptions
    packageOptions {
        ...
        reportUndocumented = true // Emit warnings about not documented members 
        ...
    }
}

但我不想压制有关无证件的警告。那也差一点。所有我想做的就是假设我没有重复自己不重复自己的假设,禁止对未记载的override人提出警告。

是否有人知道是否可以选择仅为override fun关闭警告?

2 个答案:

答案 0 :(得分:0)

对于您的具体案例,请使用 @supress

class MyAndroidActivity: Activity {

    /** @suppress */
    override fun onCreate(savedInstanceState: Bundle?) {
        ...
    }

}

这样,您将完全从文档中排除被覆盖的函数。

但是,如果要在文档中保留对API调用的引用,只需在元素附近添加一个空的单行docstring(它将禁用警告):

class MyAndroidActivity: Activity {

    /***/
    override fun onCreate(savedInstanceState: Bundle?) {
        ...
    }

}

答案 1 :(得分:0)

可能您需要在下面添加:

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

最终可能像:

dokka {
        // refer https://github.com/Kotlin/dokka#output-formats
        outputFormat = 'html'
        outputDirectory = "$buildDir/javadoc"
        // Do not create index pages for empty packages
        skipEmptyPackages = true
        // No default documentation link to kotlin-stdlib
        noStdlibLink = false
    }

noStdlibLink = false 将通过提供指向 kotlin-stdlib 的链接来生成继承函数的文档。您可以参考更多here

我使用了dokka版本 0.9.17

输出将是:

  

任务:app:dokka截止日期

BUILD SUCCESSFUL in 1m 13s
104 actionable tasks: 35 executed, 69 up-to-date
5:53:38 PM: Task execution finished 'dokka'.