我必须排除一些类的公共方法包含在javadoc中。我尝试了Chris Nokleberg的ExcludeDoclet(六分)。但是doclet给出了一个小问题: 如果类中的其他方法返回List(或任何其他泛型), 而不是作为List显示在javadoc中,返回类型只显示为List(没有通用信息)
任何人都可以给出提示或提供解决此问题的方法吗?
答案 0 :(得分:7)
我假设您要从javadoc中排除的方法是您不希望客户端使用的公共方法。换句话说,这些方法是deprecated。您需要做的是使用@Deprecated注释。像这样:
@Deprecated public void badMethod() {
...
}
现在,不推荐使用badMethod()。如果有人在他的代码中使用了badMethod(),他会收到编译器的警告(他正在使用一种弃用的方法)。
但是,@ Deprecated注释不会从javadoc中排除已弃用的方法。为了从javadoc中排除方法,您需要执行以下操作:生成javadoc时,请使用nodeprecated javadoc cmd行选项。 -nodeprecated选项可防止在文档中生成任何已弃用的API。因此,如果您使用@Deprecated注释并使用-nodeprecated选项生成javadoc,那么您的错误方法将不会出现在javadoc中。
但在我看来,您不应该从javadoc中排除已弃用的公共方法。最好是如果它们出现在文档中,并解释为什么不推荐使用该方法以及使用该方法。