java - cdata xml
¿Tiene Javadoc un equivalente a<![CDATA[...]]>? (4)
Cierre y vuelva a abrir la etiqueta {@code}
entre las llaves para obtener $ {dollar_sign_variables} para que se representen correctamente en eclipse a pesar del error 206319 y el error 206345 y sin tener que recurrir a HTML completo escapando:
/*
* <pre>
* {@code
* <outer>
* <inner1>Text</inner1>
* <inner2>$}{ "script" }{@code </inner2>
* </outer>
* }
* </pre>
*/
que se reproduce en Eclipse Indigo SR2 (3.7.2) como
<outer>
<inner1>Text</inner1>
<inner2>${ "script" }</inner2>
</outer>
Desafortunadamente, no hay CDATA en HTML.
Esto es una pena, porque sería perfecto para agregar comentarios javadoc
que incluyan XML, por lo que no tiene que escapar de <y>, por ejemplo:
/**<![CDATA[ This parses <complexType name=""> ]]>*/
Sin embargo, sería posible que javadoc
reconozca la sección CDATA y la convierta a HTML para usted. Por ejemplo:
This parses <complexType name="">
O podría usar una sintaxis más simple que CDATA. Debido a que javadoc
es extensible, es posible que alguien haya agregado esta funcionalidad; o tal vez javadoc
ya lo tiene enterrado en algún lugar dentro ... ¿Alguien lo sabe?
Extendiendo la respuesta de @Fabian , uso tanto <pre>
como {@code ...}
. Aquí un ejemplo con XML como código fuente:
/*Outputs data from a result set to an XML
* with following structure:
* <pre>
* {@code
* <row>
* <FIELD1>gregh</FIELD1>
* <FIELD2>487</FIELD2>
* <!-- etc. -->
* </row>
* <!-- more rows-->
* }
* </pre>
*/
<pre>
permite escribir código en varias líneas y conservar su estructura.
Probado con Eclipse 3.6.1.
He probado bastantes soluciones, ninguna de las cuales fue muy satisfactoria para mis necesidades. Hacer las etiquetas pre + @code (o @literal) por lo general funcionará:
<pre>
{@literal
<configFiles>
<configFile>
<type>LOGICAL_INDEX_CONFIG</type>
</configFile>
</configFiles>}
</pre>
El problema es, ¿qué pasa si tienes $ {dollar_sign_variables} en tu html? (y esto es frecuente si su documentación utiliza ejemplos xml que se basan en el filtrado de Maven). Digamos que tienes $ {ITEM_INDEX_TO_LOGICAL}, Eclipse lo procesará así:
<configFiles>
<configFile>
ITEM_INDEX_TO_LOGICAL
}
En última instancia, no tuve más remedio que seguir el método de html-escaping (puede usar este ) para que se muestre correctamente:
Esta:
<configFiles>
<configFile>
<type>${ITEM_INDEX_TO_LOGICAL}</type>
</configFile>
</configFiles>
Renders como este:
</configFiles>
<configFile>
<type>${ITEM_INDEX_TO_LOGICAL}</type>
</configFile>
</configFiles>
Desafortunadamente, esto lo colocará en una posición en la que realmente no puede entender el ''xml de ejemplo'' que se está documentando a menos que renderice el Javadoc. Afortunadamente, eclipse puede hacer esto por ti sobre la marcha ...
Puede usar la etiqueta @code
de @code
: /** This parses {@code <complexType name="">} */