【问题标题】:javadoc exclude some public methods from classjavadoc 从类中排除一些公共方法
【发布时间】:2011-06-16 11:24:28
【问题描述】:

我必须从 javadocs 中排除一个类的一些公共方法。我尝试了 Chris Nokleberg 的 ExcludeDoclet (sixlegs)。但是 doclet 给出了一个小问题: 如果类中的其他方法返回 List(或任何其他泛型), 而不是在 javadoc 中显示为 List,返回类型只是显示为 List(没有通用信息)

任何人都可以就如何解决此问题提供提示或解决方法吗?

【问题讨论】:

标签: java ant javadoc public-method


【解决方案1】:

我假设您要从 javadoc 中排除的方法是您不希望客户使用的公共方法。换句话说,这些方法是deprecated。您需要做的是使用 @Deprecated 注释。像这样:

@Deprecated public void badMethod() {
    ...
}

现在,badMethod() 已被弃用。如果有人在他的代码中使用 badMethod(),他会从编译器那里得到一个警告(他正在使用一个不推荐使用的方法)。

但是,@Deprecated 注解不会从 javadoc 中排除已弃用的方法。为了从 javadoc 中排除该方法,您需要执行以下操作: 生成 javadoc 时,使用 nodeprecated javadoc cmd 行选项。 -nodeprecated 选项可防止在文档中生成任何已弃用的 API。因此,如果您使用 @Deprecated 注释并使用 -nodeprecated 选项生成 javadoc,那么您的错误方法将不会出现在 javadoc 中。

但在我看来,您不应该从您的 javadoc 中排除已弃用的公共方法。最好将它们显示在文档中,并解释为什么不推荐使用该方法以及改用什么方法。

【讨论】:

  • +1 表示最后一段。旧代码的用户需要查看他们应该使用的新方法的参考。大多数用户都很懒惰,所以如果你不让他们变得超级简单,他们就会放弃使用已弃用的方法。
猜你喜欢
  • 1970-01-01
  • 2011-01-06
  • 2015-03-20
  • 1970-01-01
  • 2015-12-17
  • 2011-12-11
  • 1970-01-01
  • 2018-09-27
  • 2019-12-21
相关资源
最近更新 更多