Jak możesz uciec od znaku @ w javadoc?


180

Jak mogę uciec od @symbolu w javadoc? Próbuję użyć go w {@code}tagu, który jest w środku<pre> tagach.

Próbowałem już &#64;sekwencji ucieczki HTML , ale to nie działało.


Teraz zaczęło się wyświetlać dobrze po tym, jak poprawiłem niektóre wcięcia w bloku @ {code}! To było w Eclipse, jeśli ma to znaczenie.
JayL

Nadal nie mogę tego zrobić
Neil Benn,

Odpowiedzi:


267

Użyj {@literal}tagu javadoc:

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

Jawadok w tym celu będzie czytał:

This is an "at" symbol: @

Oczywiście będzie to działać dla dowolnych postaci i jest to „oficjalnie obsługiwany” sposób wyświetlania dowolnych „znaków specjalnych”.

Jest to również najprostsze - nie musisz znać kodu szesnastkowego znaku i możesz przeczytać, co wpisałeś!


1
Jak uciec od }symbolu?
ADTC

1
@ADTC Nie możesz. Dlaczego miałbyś chcieć }nie ma specjalnego znaczenia w html.
Czeski

Sądzę więc, że można go podzielić tylko na dwa literaltagi.
ADTC

23
Dziwię się, że to zaakceptowane i tak wzniosłe głosowanie. Przesłanka pytania: wewnątrz tagu {@code} . {@literal} po prostu nie działa w tagu {@code}.
Daniel C. Sobral

6
Pominięcie {i użycie @literal @działa wewnątrz {@code}tagu.
Brad Turek

55

Po prostu napisz jako encję HTML:

&#064;

Z dokumentu „ javadoc - The Java API Documentation Generator

Jeśli chcesz rozpocząć wiersz ze znakiem @ i nie interpretować go, użyj encji HTML @.

Oznacza to, że możesz używać encji HTML dla każdego znaku, którego potrzebujesz, aby uciec, i rzeczywiście możesz:

Tekst musi być napisany w języku HTML z elementami HTML i znacznikami HTML. Możesz użyć dowolnej wersji HTML obsługiwanej przez przeglądarkę. Standardowy doclet generuje kod zgodny z HTML 3.2 gdzie indziej (poza komentarzami do dokumentacji) z włączeniem kaskadowych arkuszy stylów i ramek. HTML 4.0 jest preferowany dla generowanych plików ze względu na zestawy ramek.

Na przykład jednostki dla symbolu mniejszego niż (<) i większego niż symbol (>) należy zapisać jako &lt;i &gt;. Podobnie, ampersand (&) należy zapisać jako &amp;.


Działa lepiej niż wyrażenie dosłowne, gdy nie następuje po nim spacja (np.
Podczas pisania

8

moim rozwiązaniem jest

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

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.