2010-04-14 117 views
32

当我有一个注释的代码示例时,我的JavaDoc不起作用。JavaDoc中带注释的代码示例

有什么建议吗?

/** 
* <pre> 
* public class Demo { 
* @DemoAnnotation 
* public void demoMethod() { 
* } 
* } 
* </pre> 
*/ 
@Retention(RetentionPolicy.RUNTIME) 
@Target({ElementType.METHOD}) 
public @interface DemoAnnotation { 

回答

29

您必须在JavaDoc的&#064;更换@

51

一个更通用的解决方案:{@literal @}

{@literal}标签表示文字文本。附上的文本被解释为不包含HTML标记或嵌套的javadoc标记。例如,doc评论文本:{@literal a<B>c}将在生成的HTML页面中显示不变:a<B>c - 也就是说,<B>不会被解释为粗体。

需要Java 5+

+3

恕我直言,这应该是接受的答案。 – BetaRide 2014-09-05 07:33:22

+1

在实际尝试之前Upvoted它,但后来我发现了一个问题:使用'{@literal @}'在@之前添加了一个丑陋的空间(至少在NetBeans中查看时)。 '@'不会(例如,它在JUnit javadoc中使用)。哦,*和*它在'@ code'内不起作用('@')。 – 2016-09-29 13:26:51

+0

@SergeyTachenov无法使用命令行javadoc重现您的空间问题。 “@ code”行为是设计的;请参考此答案,以获取有关如何在javadoc中嵌入复杂代码片段的好建议:http://stackoverflow.com/a/13512524/159570 – 2016-09-30 08:14:19

-3

必须使用@Documented标注在javadoc中添加注释。检查在API的实施

+0

这是不正确的:请阅读https://docs.oracle.com/javase/ 7 /文档/ API /爪哇/郎/注解/ Documented.html – Marco 2015-05-13 09:58:25