javadoc @hide无法工作

时间:2016-01-29 03:22:08

标签: java javadoc

根据link,我写了以下代码:

/**
 * @hide
 * */
public void myMethod() {
    // do something
}

当我使用命令生成doc:

$ javadoc -locale en_US -encoding UTF-8 -charset UTF-8 -d doc xxx.java

该文档仍然包含myMethod项。那么如何隐藏myMethod?我错过了什么?

1 个答案:

答案 0 :(得分:3)

您使用的是Doclava代码,但正在使用标准doclet生成API文档。

  

构建Doclava

     

Doclava source捆绑了一个用于构建doclet的ant脚本。 “jar”任务将构建一个包含Doclava和所有必需依赖项的jar。

     

将Doclava与Javadoc一起使用

     

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

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

  

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

     

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

     

有几种选择:

     
      
  • 排除源文件 - 您只能将要记录的所有类的源文件名传递给javadoc,并排除要忽略的类。请注意,这具有文件的粒度,而不是类。因此,如果排除包含嵌套类的源文件,也会排除它们。 (您可以将类列表放在command line argument file中,而不是直接放在命令行上。)在命令行中传递包名时,默认的Javadoc无法省略类。
  •   
  • 排除个别课程 - 您可以使用Exclude Doclet。这比前一个选项具有更精细的粒度(类而不是源文件),并且使用起来更自然,因为您在文件中明确列出了要排除的文件。
  •   
  • 排除类,方法和字段 - yDoc Doclet具有此功能,您可以在源代码中使用排除标记标记项目。此外,欢迎任何人在上面的方法和字段中扩展Exclude Doclet - 我们很乐意发布它并将您的名字添加到学分中。
  •   
     

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

另请查看Proposed Javadoc Tags page以获取有关@exclude@hide的更多信息。