2010-02-18 9 views
148

¿Cómo puedo escapar del símbolo @ en javadoc? Estoy tratando de usarlo dentro de una etiqueta {@code}, que está dentro de las etiquetas <pre>.¿Cómo se puede escapar del carácter @ en javadoc?

Ya probé la secuencia de escape html &#64;, pero eso no funcionó.

+0

Ahora que ha comenzado mostrando bien después ajusté algunas de la sangría dentro del código @ {} bloquear! Esto estaba en Eclipse si es importante. – JayL

+0

Todavía no puedo hacer que funcione –

Respuesta

211

utilizar la etiqueta {@literal} javadoc:

/** 
* This is an "at" symbol: {@literal @} 
*/ 

el Javadoc para este leerá:

This is an "at" symbol: @ 

Por supuesto, esto funcionará para cualquier caracteres, y es el "oficialmente modo "compatible" de mostrar cualquier carácter "especial".

También es el más directo: no es necesario que conozca el código hexadecimal del personaje, y, puede leer lo que ha escrito.

+1

¿Cómo se puede escapar del símbolo '}'? – ADTC

+1

@ADTC No puedes. ¿Por qué querrías? '}' no tiene un significado especial en html. – Bohemian

+0

Así que supongo que solo puedes dividirlo en dos etiquetas 'literales'. – ADTC

1

Usted tiene la idea general, trate de usar la representación octal: &#064;

+5

Esto no es octal. – Joey

+0

'' @ '' tiene el punto de código 0x40 en hexadecimal, que es 64 en decimal –

41

Sólo tiene que escribir como una entidad HTML:

&#064; 

Del documento "javadoc - The Java API Documentation Generator"

Si desea comenzar una línea con el carácter @ y no hacer que se interprete, use la entidad HTML @.

Esto implica que se puede usar entidades HTML para cualquier carácter que se necesita para escapar, y de hecho puede:

El texto debe estar escrito en HTML con entidades HTML y etiquetas HTML . Puede usar cualquier versión de HTML compatible con su navegador. El doclet estándar genera código compatible con HTML 3.2 en otro lugar (fuera de los comentarios de la documentación) con la inclusión de cuadros y hojas de estilo en cascada. HTML 4.0 es preferido para los archivos generados debido a los conjuntos de marcos.

Por ejemplo, entidades para el símbolo menor que (<) y el símbolo mayor que (>) debe escribirse como &lt; y &gt;. Del mismo modo, el signo de & comercial (&) se debe escribir como &amp;.

+0

esto funciona bien con java6 pero no con java5 –

+1

Esto se muestra como literalmente en Eclipse. –

+5

Esto no parece funcionar en JDK1.8 –

5

mi solución es

/** 
* Mapper Test Helper. 
* 
* add the following annotations above the class 
* <pre>{@code 
* // junit5 
* @literal @ExtendWith(SpringExtension.class) 
* // junit4 
* @literal @RunWith(SpringRunner.class) 
* }</pre> 
*/ 
+1

Lo único que funcionaba dentro de '{@ code' con Java 8. – Alex

Cuestiones relacionadas