Vinculando a um URL externo em Javadoc?


Respostas:


1225

Isso cria um cabeçalho "Consulte também" contendo o link, ou seja:

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

renderizará como:

Veja também:
           http://google.com

considerando que isto:

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

criará um link in-line:

Veja http://google.com


59
Se alguém estiver interessado, já que eu apenas tinha que procurar: De acordo com a especificação do Javadoc, a @seetag vem após as tags @param/ @returne antes das @since/ @serial/ @deprecated.
— Friederbluemle

7
Por precaução, o Intellij 13 parece não suportar esta tag. Ele suporta links em linha. A tag está de alguma forma descontinuada?
— Timo

24
Eu recomendo <a href="http://google.com" target="_top">http://google.com</a>. O motivo da adição de target = "_ top" é porque alguns dos arquivos javadoc html gerados fazem uso de quadros, e você provavelmente deseja que a navegação afete a página inteira, e não apenas o quadro atual.
— Antony

3
Se você receber um aviso como "warning - Tag \ @see: final final '>':", verifique se você não possui dois hiperlinks na mesma diretiva \ @see. Em vez disso, use um link por \ @see.
— Travis Spencer

7
por que é tão complicado adicionar um link de URL a um javadoc? que achou que o HTML era uma boa idéia ... / facepalm
— Alguém em algum lugar

189

Retirado da especificação javadoc

@see <a href="URL#value">label</a>: Adiciona um link conforme definido por URL#value. O URL#valueURL é relativo ou absoluto. A ferramenta Javadoc distingue isso de outros casos, procurando por um símbolo menor que ( <) como o primeiro caractere.

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


Esquisito; Juro que só adicionei as costas; Eu não sei onde o exemplo foram para ...
— Stobor

Acho que tivemos algum tipo de problema de edição simultâneo. Eu estava colocando eles também.
— Aaron

Justo. Você está perdendo os acentos graves na primeira linha do seu blockquote, embora ....
— Stobor

27
@see não é necessário. Os javadocs podem ser formatados com tags html, portanto, é necessária apenas a tag "a".
— Gabriel Llamas

5
@GabrielLlamas É verdade, mas a pergunta original implica que é assim que está sendo usada. É útil saber que especificamente faz o trabalho em um campo see-também, que é onde um monte de gente vai querer isso.
— Ionoclast Brigham 01/09/2015

33

Os Javadocs não oferecem nenhuma ferramenta especial para links externos; portanto, você deve usar apenas o html padrão:

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

ou

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

Não use {@link ...}ou {@linkplain ...}porque estes são para links para os javadocs de outras classes e métodos.


16

Basta usar um link HTML com um elemento a como

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


Apenas postou novamente a resposta correta, à medida que emergia dos outros comentários. Isso seria mais rápido de ler do que todo o tópico.
— Dr. Max Völkel

4

Difícil encontrar uma resposta clara no site da Oracle. O seguinte é 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";

Qual é o significado de agrupar a <a>tag html com o {@link ...}?
— Patrick M

2
Provavelmente, isso é um erro, porque a documentação do javadoc não menciona esse formulário, pois não faz diferença de um raw <a>.
— Didier L

4
O {@link xxx} aqui não está certo. {@link xxx} serve para vincular a outras classes e métodos no seu código-fonte. É desnecessário aqui. O resto está bem.
— MiguelMunoz 02/09/2015

4
Essa construção não é permitida pelos padrões Java 8 (doclint on).
— Stepan Vavra

1
Isso está completamente errado. O uso correto de acordo com a referência e a documentação é{@link package.class#member label}
— Dinei
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.