Reguła Checkstyle JavadocStyle nie zezwala na tag <u>
. Zgodnie z dokumentami kontrole były wzorowane na sprawdzeniach wykonanych przez DocCheck doclet dostępny od firmy Sun. Niestety, nigdzie nie znalazłem DocCheck. Nie znalazłem też oficjalnej dokumentacji dotyczącej dozwolonych znaczników HTML w Javadoc. Czy jest jakiś?Dozwolone znaczniki HTML w Javadoc
Odpowiedz
W komentarzach Javadoc nie ma żadnych rzeczywistych ograniczeń dotyczących używania kodu HTML. The Javadoc documentation stwierdza:
Komentarze są pisane w HTML - Tekst musi być napisany w HTML, ponieważ powinien używać elementów HTML i może używać znaczników HTML. Możesz użyć dowolnej wersji HTML obsługiwanej przez twoją przeglądarkę; napisaliśmy standardowy dokument, aby wygenerować kod zgodny z HTML 3.2 w innym miejscu (poza komentarzami do dokumentacji) z uwzględnieniem kaskadowych arkuszy stylów i ramek. (My poprzedzić każdy wygenerowany plik z „HTML 4.0”, ponieważ z zestawów ramek.)
listy dozwolonych znaczników HTML jest ustalony w czeku JavadocStyle Checkstyle (zweryfikowane przez patrząc na źródłach Checkstyle 5.6). Więc jeśli chcesz zachować inne dobre właściwości, będziesz musiał żyć z ograniczonym zbiorem tagów HTML. Jeden obejście problemu podkreślenia jest użycie CSS (co jest dopuszczalne) tak: Tylko
<span style="text-decoration:underline;">underlined text</span>
pozwolenia javadoc podzbiór znaczników HTML, jak Java 8.
komponent doclint javadoc za wymusza to ograniczenie. Możesz wyłączyć wszystkie ostrzeżenia doclint przekazując -Xdoclint:none
do javadoc, , ale powinieneś rozważyć poprawienie swoich komentarzy Javadoc, ponieważ w przeciwnym razie wygenerowana dokumentacja interfejsu HTML API może wyglądać źle lub może ominąć zawartość. (Zwykle używam -Xdoclint:all,-missing
dostać ostrzeżenia o wszystkim z wyjątkiem brakuje javadoc @
tagi.)
nie znalazłem dokumentacji publicznej tagów że doclint zezwoleń, ale tutaj jest lista jego dozwolonych znaczników HTML, które zebrane z Plik Javy 8: langtools/src/share/classes/com/sun/tools/doclint/HtmlTag.java
.
A
B
BIG
BLOCKQUOTE
BODY
BR
CAPTION
CENTER
CITE
CODE
DD
DFN
DIV
DL
DT
EM
FONT
FRAME
FRAMESET
H1
H2
H3
H4
H5
H6
HEAD
HR
HTML
I
IMG
LI
LINK
MENU
META
NOFRAMES
NOSCRIPT
OL
P
PRE
SCRIPT
SMALL
SPAN
STRONG
SUB
SUP
TABLE
TBODY
TD
TFOOT
TH
THEAD
TITLE
TR
TT
U
UL
VAR
Aktualizacja dla JDK 9
JDK 9 zezwala na zastosowanie innego zestawu znaczników niż JDK 8 robi. Oto lista znaczników dla obu JDK, z uwagami dotyczącymi tych, które są dozwolone tylko przez jeden z JDK. Ponownie dane pochodzą z pliku HTMLTag.java
.
A
BIG // JDK 8 only
B // JDK 8 only
BLOCKQUOTE
BODY
BR
CAPTION
CENTER
CITE // JDK 8 only
CODE
DD
DFN // JDK 8 only
DIR // JDK 9 only
DIV
DL
DT
EM
FONT
FOOTER // JDK 9 only
FRAME // JDK 8 only
FRAMESET // JDK 8 only
H1
H2
H3
H4
H5
H6
HEAD
HEADER // JDK 9 only
HR
HTML
I
IFRAME // JDK 9 only
IMG
INPUT // JDK 9 only
LI
LINK
LISTING // JDK 9 only
MAIN // JDK 9 only
MENU
META
NAV // JDK 9 only
NOFRAMES // JDK 8 only
NOSCRIPT
OL
P
PRE
SCRIPT
SECTION // JDK 9 only
SMALL
SPAN
STRONG
SUB
SUP // JDK 8 only
TABLE
TBODY
TD
TFOOT // JDK 8 only
TH
THEAD // JDK 8 only
TITLE
TR
TT
U // JDK 8 only
UL
VAR // JDK 8 only
Twojej wiadomości '' element został dodany bezpośrednio do zakodowanego na stałe listy identyfikatorów w Checkstyle 5.8. Lista wciąż nie może być modyfikowana, ale ten konkretny problem został rozwiązany. –