Menautkan ke URL eksternal di Javadoc?


Jawaban:


1225

Ini menciptakan tajuk "Lihat Juga" yang berisi tautan, yaitu:

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

akan dirender sebagai:

Lihat Juga:
           http://google.com

sedangkan ini:

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

akan membuat tautan sebaris:

Lihat http://google.com


59
Jika ada yang tertarik, karena saya hanya harus mencarinya: Menurut Javadoc spesifikasi yang @seetag datang setelah para @param/ @returntag dan sebelum yang @since/ @serial/ @deprecatedtag.
friederbluemle

7
Untuk jaga-jaga, Intellij 13 tampaknya tidak mendukung tag ini. Itu mendukung tautan in-line. Apakah tag itu entah bagaimana sudah usang?
Timo

24
Saya merekomendasikan <a href="http://google.com" target="_top">http://google.com</a>. Alasan untuk menambahkan target = "_ top" adalah karena beberapa file html javadoc yang dihasilkan menggunakan frame, dan Anda mungkin ingin navigasi mempengaruhi seluruh halaman daripada hanya frame saat ini.
Antony

3
Jika Anda mendapatkan peringatan seperti "warning - Tag \ @see: missing final '>':", pastikan Anda tidak memiliki dua hyperlink dalam direktif \ @see yang sama. Sebagai gantinya, gunakan satu tautan per \ @ lihat.
Travis Spencer

7
mengapa begitu rumit untuk menambahkan tautan URL ke javadoc? yang berpikir bahwa HTML adalah ide yang bagus ... / facepalm
Seseorang Di Suatu Tempat

189

Diambil dari spec javadoc

@see <a href="URL#value">label</a>: Menambahkan tautan seperti yang didefinisikan oleh URL#value. Ini URL#valueadalah URL relatif atau absolut. Alat Javadoc membedakan ini dari kasus lain dengan mencari simbol yang kurang dari ( <) sebagai karakter pertama.

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


Aneh; Aku bersumpah aku hanya menambahkan di backticks; Saya tidak tahu ke mana contohnya ...
Stobor

Saya pikir kami memiliki beberapa masalah pengeditan bersamaan. Saya menempatkan mereka juga.
Aaron

Cukup adil. Kau hilang backticks di baris pertama dari blockquote Anda, meskipun ....
Stobor

27
@lihat tidak diperlukan. Javascript bisa diformat dengan tag html, jadi hanya perlu tag "a".
Gabriel Llamas

5
@GabrielLlamas Benar, tetapi pertanyaan awal menyiratkan ini adalah bagaimana ini digunakan. Ini berguna untuk mengetahui bahwa secara khusus melakukan pekerjaan dalam bidang lihat-juga, yang mana banyak orang akan menginginkannya.
Ionoclast Brigham

33

Javadocs tidak menawarkan alat khusus untuk tautan eksternal, jadi Anda harus menggunakan html standar:

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

atau

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

Jangan gunakan {@link ...}atau {@linkplain ...}karena ini untuk tautan ke javadocs dari kelas dan metode lain.


16

Cukup gunakan tautan HTML dengan elemen-a seperti

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


Cukup kirim ulang jawaban yang benar saat muncul dari komentar lain. Ini akan lebih cepat dibaca daripada keseluruhan utas.
Dr. Max Völkel

4

Sulit menemukan jawaban yang jelas dari situs Oracle. Berikut ini dari 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";

Apa pentingnya membungkus <a>tag html dengan {@link ...}?
Patrick M

2
Ini mungkin kesalahan karena dokumentasi javadoc tidak menyebutkan formulir ini, di dalamnya tidak membuat perbedaan dari mentah <a>.
Didier L

4
{@Link xxx} di sini tidak benar. {@link xxx} untuk menautkan ke kelas dan metode lain dalam kode sumber Anda. Tidak perlu di sini. Sisanya baik-baik saja.
MiguelMunoz

4
Konstruk ini tidak diizinkan oleh standar Java 8 (doclint on).
Stepan Vavra

1
Ini jelas salah. Penggunaan yang benar sesuai referensi dan dokumentasi adalah{@link package.class#member label}
Dinei
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.