Wie können Sie dem @ -Zeichen in Javadoc entkommen?

180

Wie kann ich dem @Symbol in Javadoc entkommen ? Ich versuche es in einem {@code}Tag zu verwenden, das sich in <pre>Tags befindet.

Ich habe bereits die HTML-Escape- &#64;Sequenz ausprobiert , aber das hat nicht funktioniert.

JayL
quelle
Jetzt wird es gut angezeigt, nachdem ich einige Einrückungen im @ {code} -Block angepasst habe! Dies war in Eclipse, wenn es darauf ankommt.
JayL
Ich kann es immer noch nicht zum Laufen bringen
Neil Benn

Antworten:

267

Verwenden Sie das {@literal}Javadoc-Tag:

/**
 * This is an "at" symbol: {@literal @}
 */

Der Javadoc dafür lautet:

This is an "at" symbol: @

Dies funktioniert natürlich für alle Zeichen und ist die "offiziell unterstützte" Art, "Sonderzeichen" anzuzeigen.

Es ist auch am einfachsten - Sie müssen den Hex-Code des Zeichens nicht kennen und können lesen, was Sie eingegeben haben!

Böhmisch
quelle
1
Wie entkommen Sie dem }Symbol?
ADTC
1
@ADTC Das kannst du nicht. Warum willst du? }hat keine besondere Bedeutung in HTML.
Bohemian
Sie können es also wohl nur in zwei literalTags aufteilen .
ADTC
23
Ich bin überrascht, dass dies akzeptiert und so hochgestimmt wird. Prämisse der Frage: innerhalb des {@code} -Tags . {@literal} funktioniert in einem {@code} -Tag einfach nicht.
Daniel C. Sobral
6
Das Weglassen {und Verwenden von Funktionen @literal @innerhalb eines {@code}Tags.
Brad Turek
55

Schreiben Sie es einfach als HTML-Entität:

&#064;

Aus dem Dokument " javadoc - The Java API Documentation Generator "

Wenn Sie eine Zeile mit dem @ -Zeichen beginnen möchten und diese nicht interpretieren möchten, verwenden Sie die HTML-Entität @.

Dies bedeutet, dass Sie HTML-Entitäten für jedes Zeichen verwenden können, für das Sie einen Escapezeichen benötigen, und zwar:

Der Text muss in HTML mit HTML-Entitäten und HTML-Tags geschrieben sein. Sie können jede HTML-Version verwenden, die Ihr Browser unterstützt. Das Standard-Doclet generiert HTML 3.2-kompatiblen Code an anderer Stelle (außerhalb der Dokumentationskommentare), einschließlich kaskadierender Stylesheets und Frames. HTML 4.0 wird für generierte Dateien aufgrund der Frame-Sets bevorzugt.

Beispielsweise sollten Entitäten für das Symbol kleiner als (<) und das Symbol größer als (>) als &lt;und geschrieben werden &gt;. Ebenso sollte das kaufmännische Und (&) wie folgt geschrieben werden &amp;.

Frank V.
quelle
Es funktioniert besser als der wörtliche Ausdruck, wenn kein Leerzeichen folgt (zum Beispiel beim Schreiben von Anmerkungen)
Bludwarf
8

Meine Lösung ist

/**
 * Mapper Test Helper.
 *
 * add the following annotations above the class
 * <pre>{@code
 * // junit5
 * @literal @ExtendWith(SpringExtension.class)
 * // junit4
 * @literal @RunWith(SpringRunner.class)
 * }</pre>
 */
Yeongjun Kim
quelle
2

Sie haben die allgemeine Idee, versuchen Sie es mit der oktalen Darstellung: &#064;

Yuval Adam
quelle
6
Dies ist nicht oktal.
Joey
@hat den Codepunkt 0x40 in hexadezimal, der 64 in dezimal ist
Binkan Salaryman