当我有一个带注释的代码示例时,我的JavaDoc不起作用。
有什么建议吗?
/**
* <pre>
* public class Demo {
* @DemoAnnotation
* public void demoMethod() {
* }
* }
* </pre>
*/
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD})
public @interface DemoAnnotation {
答案 0 :(得分:53)
更通用的解决方案:{@literal @}
{@literal}
标记表示文字文字。随附的文本被解释为不包含HTML标记或嵌套的javadoc标记。例如,文档注释文本{@literal a<B>c}
在生成的HTML页面中不变地显示:a<B>c
- 也就是说,<B>
不会被解释为粗体。
需要Java 5 +
答案 1 :(得分:31)
您必须在JavaDoc中将@
替换为@
。
答案 2 :(得分:0)
像这样使用:
/**
* <pre><code>
* public class Demo {
* @DemoAnnotation
* public void demoMethod() {
* }
* }
* </code></pre>
*/
产生一个段落,而单独的也可以内联使用。
答案 3 :(得分:0)
您还可以使用@code转义注释,但是您必须像这样分别进行操作:
/**
* <pre>
* public class Demo {
* {@code @DemoAnnotation }
* {@code @AnotherAnnotation }
* public void demoMethod() {
* }
* }
* </pre>
*/
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD})
public @interface DemoAnnotation {
将这样渲染:
public class Demo {
@DemoAnnotation
@AnotherAnnotation
public void demoMethod() {
}
}
注意:将两个注解(或整个代码示例)仅包装在一个@code块中是行不通的。
答案 4 :(得分:-3)
您必须使用@Documented注释在javadoc中添加注释。检查API上的实现