2010-04-14 12 views
32

mi JavaDoc no funciona cuando tengo un ejemplo de código con una anotación.Ejemplo de código con anotación en JavaDoc

¿Alguna sugerencia?

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

Respuesta

29

Debe reemplazar @ con &#064; en su JavaDoc.

51

una solución más general: {@literal @}

La etiqueta {@literal} marca el texto literal. El texto adjunto se interpreta como que no contiene etiquetas HTML ni etiquetas javadoc anidadas. Por ejemplo, el texto del comentario del doc: {@literal a<B>c} se muestra en la página HTML generada sin cambios: a<B>c - es decir, el <B> no se interpreta como negrita.

requiere Java 5+

+3

En mi humilde opinión esto debería ser la respuesta aceptada. – BetaRide

+1

Upvoted antes de intentarlo, pero luego noté un problema: el uso de '{@literal @}' agrega un espacio feo antes del '@' (al menos cuando se ve en NetBeans). '@' no (y se usa en JUnit javadoc, por ejemplo). Ah, * y * no funciona dentro de '@ code' (' @ 'lo hace). –

+0

@SergeyTachenov No se pudo reproducir su problema de espacio utilizando la línea de comando javadoc. El comportamiento '@ code' es por diseño; consulte esta respuesta para obtener una buena sugerencia sobre cómo incrustar fragmentos de código complejos en javadoc: http://stackoverflow.com/a/13512524/159570 –

-3

Debe utilizar la anotación @Documented para añadir anotaciones en el Javadoc. Compruebe la implementación en la API

+0

Esto es incorrecto: lea https://docs.oracle.com/javase/ 7/docs/api/java/lang/annotation/Documented.html – Marco

Cuestiones relacionadas