Javadoc, das auf eine Klasse in einem anderen Paket verlinkt

Lesezeit: 2 Minuten

Benutzer-Avatar
Ich bin deine Faja

Ich habe zwei Pakete, Shapes und Fruits:

com.myproject.Shapes.
    Circle
    Square
    Triangle
com.myproject.Fruits.
    Apple
    Orange

Ich schreibe das JavaDoc für Apple und müssen eine bereitstellen {@link} zu Square.

Ich habe alle folgenden ausprobiert, und keiner von ihnen funktioniert:

{@link Square}
{@link com.myproject.Square}

Ich konnte Dokumentation zum Verlinken finden auf: (a) Klassen innerhalb desselben Pakets oder (b) externe URLs, aber keine Klassen in einem anderen Paket.

Irgendwelche Ideen, was die korrekte Syntax sein sollte? Vielen Dank!

  • Definieren Sie “keiner von ihnen funktioniert”? Was geschieht? Ihre Syntax ist korrekt ({@link com.myproject.Square})

    – Brian Roach

    2. September 2011 um 17:59 Uhr

Benutzer-Avatar
Johan Sjöberg

Das korrekte Syntax Varianten sind

{@link [<package>.]<class>[#<method>]}
{@link #<method>}

Ihnen hat ein komplettes Paket gefehlt. Das folgende Beispiel sollte korrekt sein

{@link com.myproject.Shapes.Square} 
                     ^^^^^^

  • Da die Syntax {@link package.class} ist, sollte es nicht {@link com.myproject.Shapes.Square} sein?

    – Patrick Costello

    2. September 2011 um 17:58 Uhr


  • Die Klasse ist Shapes.Square, nicht nur Square, also sollte sie lauten {@link com.myproject.Shapes.Square}

    – Schild

    2. September 2011 um 17:59 Uhr


  • {@link com.myproject.Shapes.Square square} ist ein Link mit “square” als Text.

    – Gutenau

    5. Dezember 2015 um 22:37 Uhr

  • Gibt es eine Kurzversion, ähnlich wie Verzeichnisse funktionieren? Beispiel: ..// ?

    – SMBiggs

    22. September 2016 um 17:44 Uhr

Verwenden Sie für ein anderes Paket diese Syntax:

{@link  package.class#member  label}

In Ihrem Fall sollte dies sein:

{@link com.myproject.Shapes.Square Square}

Wenn Sie nur den Klassennamen anzeigen möchten, verwenden Sie die Bezeichnung. Wenn der vollständige Pfad gewünscht wird, ist die Bezeichnung nicht erforderlich.

Bezug:
http://docs.oracle.com/javase/7/docs/technotes/tools/windows/javadoc.html#link

Benutzer-Avatar
sss

Die Frage ist ziemlich alt, aber es wird eine weitere Antwort für alle hinzugefügt, die ein ähnliches Problem haben.

Verwenden @see würde Ihnen einen anklickbaren Link geben, um zu einer bestimmten Klasse oder Methode zu gehen, vorausgesetzt, dass die Klasse, falls sie in einem anderen Paket vorhanden ist, importiert wird.

Falls sich die Klasse/Methode, auf die verwiesen wird, in einem anderen Modul befindet, müssen Sie eine Abhängigkeit dieses Moduls im aktuellen Modul hinzufügen, damit @see Ihnen einen anklickbaren Link bereitstellen kann.

/**
 *     @see com.myproject.Square#method(int)
 */

1178510cookie-checkJavadoc, das auf eine Klasse in einem anderen Paket verlinkt

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy