使用注释指定应该生成javadoc的类/接口?
我有一个java程序,想为类/接口生成javadoc。但是,我只想为特定的类和接口生成javadoc。我只是想知道是否有任何方法可以在每个类/接口的开头添加注释,以指示该类/接口不应生成javadoc(类似于@no generate javadoc) 请问有人有什么想法吗使用注释指定应该生成javadoc的类/接口?,java,javadoc,annotations,Java,Javadoc,Annotations,我有一个java程序,想为类/接口生成javadoc。但是,我只想为特定的类和接口生成javadoc。我只是想知道是否有任何方法可以在每个类/接口的开头添加注释,以指示该类/接口不应生成javadoc(类似于@no generate javadoc) 请问有人有什么想法吗 谢谢编写您自己的doclet非常简单,它将为您提供您想要的东西。您仍然可以委托给标准doclet,因此您的实现只需要包含特定的更改 这将是一个很好的起点。它从文件中读取排除的类。通过调用ClassDoc(实际上它是基类Prog
谢谢编写您自己的doclet非常简单,它将为您提供您想要的东西。您仍然可以委托给标准doclet,因此您的实现只需要包含特定的更改
这将是一个很好的起点。它从文件中读取排除的类。通过调用
ClassDoc
(实际上它是基类ProgramElementDoc)上的annotations()方法获取注释排除,然后根据所需的排除注释检查这些注释。如果需要,您也可以对超类和实现的接口递归地执行此操作,编写自己的doclet非常简单,并且会提供您想要的内容。您仍然可以委托给标准doclet,因此您的实现只需要包含特定的更改
这将是一个很好的起点。它从文件中读取排除的类。通过调用
ClassDoc
(实际上它是基类ProgramElementDoc)上的annotations()方法获取注释排除,然后根据所需的排除注释检查这些注释。如果需要,您也可以对超类和实现的接口递归执行此操作,感谢您提到我们的工具-
顺便说一下,仅仅排除类和成员并不是全部生成的JavaDoc在这之后必须保持一致。
例如,假设我们有以下情况:
- 类
扩展类C1
C2
- 类
扩展类C2
C3
- 类
包含一个公共方法C3
——应该对其进行文档化m()
C3
必须从文档中排除。
方法m()
会发生什么?
它应该显示在类C2
中声明的文档中!
然后,对于类C1
,m()
必须显示为继承自类C2
(而不是从类C3
,因为它实际上在代码中)
同样的情况也存在于字段中,这实际上更加复杂,因为相同名称的字段不会过载,而是相互遮挡。比如说
- 类
扩展类C1
C2
- 类
实现接口C2
I
- 类
包含一个私有字段C2
F
- 接口
包含一个公共字段I
——可能需要记录F
I
必须从文档中排除。
如何处理字段I.F
?
事实上,没什么!它不应该出现在文档中,因为它被C2.F
隐藏,它是私有的,因此必须是不可见的
标准Doclet的简单调整(授权)是否解决了此类问题?
我们的工具可以 感谢您提及我们的工具- 顺便说一下,仅仅排除类和成员并不是全部生成的JavaDoc在这之后必须保持一致。 例如,假设我们有以下情况:
- 类
扩展类C1
C2
- 类
扩展类C2
C3
- 类
包含一个公共方法C3
——应该对其进行文档化m()
C3
必须从文档中排除。
方法m()
会发生什么?
它应该显示在类C2
中声明的文档中!
然后,对于类C1
,m()
必须显示为继承自类C2
(而不是从类C3
,因为它实际上在代码中)
同样的情况也存在于字段中,这实际上更加复杂,因为相同名称的字段不会过载,而是相互遮挡。比如说
- 类
扩展类C1
C2
- 类
实现接口C2
I
- 类
包含一个私有字段C2
F
- 接口
包含一个公共字段I
——可能需要记录F
I
必须从文档中排除。
如何处理字段I.F
?
事实上,没什么!它不应该出现在文档中,因为它被C2.F
隐藏,它是私有的,因此必须是不可见的
标准Doclet的简单调整(授权)是否解决了此类问题?
我们的工具可以 我还没有试过,但这个产品有灵活的排除,并允许基于注释排除类。看,我还没有尝试过,但是这个产品有灵活的排除功能,允许基于注释排除类。看见