如何转义 javadoc 内联标记中的大括号,例如 {@code} 标记

2022-09-01 00:07:12
/**
 * Gets the meatball icon for a nincompoop.
 * 
 * <p>
 * Example: {@code <custom:meatball color="<%= Meatball.RED %> nincompoop="${person}" />}
 * 
 * @author King Cong
 * 
 */

“${person}”部分会破坏文档注释,因为它使用大括号。


答案 1

与其说是答案,不如说是解决方法,但是如果您用旧版本替换,它将按照您的期望呈现大括号。{@code ...}<code>...</code>

<code>{person} == ${person}</code>

不幸的是,这会破坏尖括号,因此对于原始问题,您需要转义这些:

<code>&lt;custom:meatball color="&lt;%= Meatball.RED %&gt; nincompoop="${person}" /&gt;</code>

您甚至可以在这里作弊,让Notepad ++为您做到这一点,使用方便的TextFX -> convert -> Encode HTML(&<>”)。

这至少有一个好处,即在生成的Javadoc和Javadoc视图中的Eclipse中,所有内容都很好地呈现出来,这似乎并不理解和朋友。&#125;


答案 2

尝试使用 HTML 转义:

$&#123;person&#125; == ${person}