javadoc @hide 无法工作

Jer*_*ONG 5 java javadoc

根据链接,我编写了以下代码:

/**
 * @hide
 * */
public void myMethod() {
    // do something
}
Run Code Online (Sandbox Code Playgroud)

当我使用命令生成文档时:

$ javadoc -locale en_US -encoding UTF-8 -charset UTF-8 -d doc xxx.java
Run Code Online (Sandbox Code Playgroud)

医生仍然保留着该myMethod物品。那么如何隐藏呢myMethod?我错过了什么 ?

Voi*_*icu 4

您正在使用Doclava标签,但使用标准 doclet 生成 API 文档。

建设多克拉瓦

Doclava源代码与用于构建 doclet 的 ant 脚本捆绑在一起。“jar”任务将构建一个包含 Doclava 和所有必要依赖项的 jar。

将 Doclava 与 Javadoc 结合使用

传递给 Javadoc 以使用 Doclava 的命令行参数是:-doclet com.google.doclava.Doclava -docletpath ${jar.file}

根据官方Javadoc FAQ,目前无法直接隐藏公共成员。

有时,您可能需要将类或方法公开,以便可以从其他包访问它,而不是因为您希望它成为公共 API 的一部分。将这些方法出现在文档中只会让应用程序开发人员感到困惑。

目前没有 Javadoc 选项可以从 javadoc 生成的文档中隐藏、排除或抑制公共成员。

有多种选择:

  • 排除源文件- 您可以仅将要记录的所有类的源文件名传递到 javadoc,并排除要省略的那些。请注意,这具有文件的粒度,而不是类的粒度。因此,如果排除包含嵌套类的源文件,它们也将被排除。(您可以将类列表放在命令行参数文件中,而不是直接放在命令行上。)默认 Javadoc 在命令行上传递包名称时无法提供省略类的方法。
  • 排除单个类- 您可以使用Exclude Doclet。与前一个选项相比,它具有更细的粒度(类而不是源文件),并且使用起来更自然,因为您在文件中明确列出了要排除的文件。
  • 排除类、方法和字段- yDoc Doclet具有此功能,您可以在源代码中使用排除标记来标记项目。此外,欢迎任何人扩展上面的排除 Doclet 的方法和字段——我们很乐意发布它并将您的名字添加到制作人员名单中。

我们正在考虑将 @exclude 作为排除成员的建议标签。

另请查看建议的 Javadoc 标签页面,@exclude了解和的更多信息@hide