¿Enlace a una URL externa en Javadoc?


Respuestas:


1226

Esto crea un encabezado "Ver también" que contiene el enlace, es decir:

/**
 * @see <a href="http://google.com">http://google.com</a>
 */

se renderizará como:

Ver también:
           http://google.com

mientras que esto:

/**
 * See <a href="http://google.com">http://google.com</a>
 */

creará un enlace en línea:

Ver http://google.com


59
Si alguien está interesado, ya que sólo tenía que mirar hacia arriba: De acuerdo con el Javadoc de especificaciones de la @seeetiqueta viene después de los @param/ @returnlas etiquetas y antes de los @since/ @serial/ @deprecatedetiquetas.
friederbluemle

77
Por si acaso, Intellij 13 no parece admitir esta etiqueta. Es compatible con enlaces en línea. ¿La etiqueta está en desuso de alguna manera?
Timo

24
Recomiendo <a href="http://google.com" target="_top">http://google.com</a>. La razón para agregar target = "_ top" es porque algunos de los archivos html javadoc generados utilizan marcos, y probablemente desee que la navegación afecte a toda la página en lugar de solo el marco actual.
Antony

3
Si recibe una advertencia como "advertencia - Etiqueta \ @see: falta final '>':", asegúrese de no tener dos hipervínculos en la misma directiva \ @see. En su lugar, use un enlace por \ @see.
Travis Spencer

77
¿Por qué es tan complicado agregar un enlace URL a un javadoc? quien pensó que HTML era una buena idea ... / facepalm
Someone Somewhere

189

Tomado de la especificación javadoc

@see <a href="URL#value">label</a>: Agrega un enlace según lo definido por URL#value. El URL#valuees una URL relativa o absoluta. La herramienta Javadoc distingue esto de otros casos al buscar un símbolo menor que ( <) como primer carácter.

Por ejemplo : @see <a href="http://www.google.com">Google</a>


Extraño; Juro que solo agregué en los backticks; No sé a dónde fue el ejemplo ...
Stobor

Creo que tuvimos algún tipo de problema de edición concurrente. Los estaba poniendo también.
Aaron

Lo suficientemente justo. Que se está perdiendo los acentos abiertos en la primera línea de su blockquote, aunque ....
Stobor

27
@see no es necesario. Los javadocs pueden formatearse con etiquetas html, por lo que solo es necesaria la etiqueta "a".
Gabriel Llamas

55
@GabrielLlamas Cierto, pero la pregunta original implica que así es como se está utilizando. Es útil saber que específicamente hace el trabajo en un campo de véase además, que es donde mucha gente lo querrá.
Ionoclast Brigham

33

Javadocs no ofrece ninguna herramienta especial para enlaces externos, por lo que debe usar html estándar:

See <a href="http://groversmill.com/">Grover's Mill</a> for a history of the
Martian invasion.

o

@see <a href="http://groversmill.com/">Grover's Mill</a> for a history of 
the Martian invasion.

No use {@link ...}o {@linkplain ...}porque estos son para enlaces a los javadocs de otras clases y métodos.


16

Simplemente use un enlace HTML con un elemento a como

<a href="URL#value">label</a>


Simplemente volví a publicar la respuesta correcta tal como surgió de los otros comentarios. Esto sería más rápido de leer que todo el hilo.
Dr. Max Völkel

4

Difícil de encontrar una respuesta clara del sitio de Oracle. Lo siguiente es de javax.ws.rs.core.HttpHeaders.java:

/**
 * See {@link <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">HTTP/1.1 documentation</a>}.
 */
public static final String ACCEPT = "Accept";

/**
 * See {@link <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.2">HTTP/1.1 documentation</a>}.
 */
public static final String ACCEPT_CHARSET = "Accept-Charset";

¿Cuál es el significado de envolver la <a>etiqueta html con el {@link ...}?
Patrick M

2
Esto es probablemente un error porque la documentación de javadoc no menciona este formulario, ya que no hace la diferencia de un raw <a>.
Didier L

44
El {@link xxx} aquí no es correcto. {@link xxx} es para vincular a otras clases y métodos en su código fuente. No es necesario aquí. El resto está bien.
MiguelMunoz

44
Esta construcción no está permitida por los estándares Java 8 (doclint on).
Stepan Vavra

1
Esto es simplemente incorrecto. El uso correcto según la referencia y la documentación es{@link package.class#member label}
Dinei
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.