有没有办法为公共方法的子集生成Javadoc?例如,通过将公共方法注释为;不属于公共API的一部分”;
我知道如何为类/接口/包的子集生成Javadoc。但是有没有一种方法可以只为公共方法的子集生成Javadoc 我更希望能够将方法(Javadoc标记或注释)标记为属于某个API或不属于该API的一部分。然后有一个只为指定方法集生成Javadoc的工具,这些方法构成了API有没有办法为公共方法的子集生成Javadoc?例如,通过将公共方法注释为;不属于公共API的一部分”;,java,api,javadoc,doclet,Java,Api,Javadoc,Doclet,我知道如何为类/接口/包的子集生成Javadoc。但是有没有一种方法可以只为公共方法的子集生成Javadoc 我更希望能够将方法(Javadoc标记或注释)标记为属于某个API或不属于该API的一部分。然后有一个只为指定方法集生成Javadoc的工具,这些方法构成了API 对于我的项目来说,在方法的公共/私有/包访问之间进行选择是不够的。公共方法可能属于或不属于公共API,也可能属于API 1,但不属于API 2。本质上,我希望能够从我的公共方法的任意子集中选择API。如果您使用的是javado
对于我的项目来说,在方法的公共/私有/包访问之间进行选择是不够的。公共方法可能属于或不属于公共API,也可能属于API 1,但不属于API 2。本质上,我希望能够从我的公共方法的任意子集中选择API。如果您使用的是
javadoc
命令行工具,您可以通过将公共方法标记为已弃用并使用-nodeprecated
选项来排除它们。但是如果你想要更复杂的东西,你必须自己实现它
关于如何做到这一点的大致想法:
创建自定义注释@API1、@API2等
使用这些注释对方法进行分类(即标记它们)
编写一个定制的Ant任务,该任务读取一个配置参数(例如,从一个文件中),该参数告诉您要为哪个API生成Javadoc
仍然在Ant任务中,循环遍历带注释的方法,并用不推荐使用的注释替换所有不是所选API的API注释。这将从Javadoc中排除它们
嗯,这真是太麻烦了。就像他们在评论中所说的,如果你有一个具有多个接口的类(对于不同的用户配置文件,我想),考虑写单独的接口。 < P>如果你不绑定到JavaDoc,你可以尝试用:
当您对方法进行适当分组时,还可以限制所需的@cond
语句的数量
创建文档时,可通过配置选项选择实际包含的方法。尚未找到解决方案。我对这个话题也很好奇+1或者,您可以通过单独的物理接口/类/包公开单独的概念API。java模块系统可能提供一些功能。一般来说,版本控制系统中的分支可能更符合您的要求。开发两个分支是一个PITA,但是代码在概念上更简单。但是,我必须使用Javadoc。谢谢你的意见。有趣。
public class SomeClass {
/// @cond API1
/**
* This method can be called as part of API1 only.
*/
public void method() { ... }
/// @endcond
/// @cond (API1 || API2)
/**
* This method can be called as part of API1 or API2.
*/
public void method2() { ... }
/// @endcond
}