【问题标题】:How can you escape the @ character in javadoc?如何在 javadoc 中转义 @ 字符?
【发布时间】:2011-01-18 10:41:09
【问题描述】:

如何在 javadoc 中转义 @ 符号?我正在尝试在{@code} 标签内使用它,该标签位于<pre> 标签内。

我已经尝试过 html 转义 @ 序列,但是没有用。

【问题讨论】:

  • 在我调整了@{code} 块内的一些缩进后,它现在开始正常显示了!如果重要的话,这在 Eclipse 中。
  • 我仍然无法让它工作

标签: java escaping javadoc


【解决方案1】:

从 15.0.2 开始在 javadoc 工具中修复

现在在使用 15.0.2 中的 javadoc 工具时,此问题似乎已得到修复。

也就是说,我们在使用javadoc多行{@code ... }块时不再需要转义@字符。

记录了一个 JDK 错误 https://bugs.openjdk.java.net/browse/JDK-8130754 ... 目前未标记为已修复,但在 javadoc 15.0.2 中不再重现。

【讨论】:

    【解决方案2】:

    我的解决方案是

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

    【讨论】:

      【解决方案3】:

      只需将其写为 HTML 实体即可:

      &#064;
      

      来自文档“javadoc - The Java API Documentation Generator

      如果您想以 @ 字符开始一行并且不对其进行解释,请使用 HTML 实体 @。

      这意味着您可以将 HTML 实体用于需要转义的 任何 字符,实际上您可以:

      文本必须以带有 HTML 实体和 HTML 标记的 HTML 编写。您可以使用浏览器支持的任何 HTML 版本。标准 doclet 在其他地方(文档 cmets 之外)生成符合 HTML 3.2 的代码,其中包含级联样式表和框架。由于框架集,HTML 4.0 更适合生成的文件。

      例如,小于符号 () 的实体应写为 &amp;lt;&amp;gt;。同样,与号 (&) 应写为 &amp;amp;

      【讨论】:

      • 不跟空格(比如写注解的时候)比文字表达效果更好
      【解决方案4】:

      使用{@literal} javadoc 标签:

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

      javadoc 会这样写:

      This is an "at" symbol: @
      

      当然,这适用于任何个字符,并且是显示任何“特殊”字符的“官方支持”方式。

      这也是最直接的——你不需要知道字符的十六进制代码,并且你可以阅读你输入的内容!

      【讨论】:

      • 如何转义} 符号?
      • @ADTC 你不能。你为什么想要? }在html中没有特殊含义。
      • 我很惊讶这被接受并被如此赞成。问题的前提:在 {@code} 标签内。 {@literal} 在 {@code} 标记内不起作用。
      • 什么? 11 月 11 日 11:11?你应该在一个月前发布这个。 ;-)
      • 省略 { 而只使用 @literal @{@code} 标记内工作。
      【解决方案5】:

      您已经大致了解了,尝试使用八进制表示:&amp;#064;

      【讨论】:

      • @ 的十六进制代码点为 0x40,十进制为 64
      猜你喜欢
      • 2018-05-24
      • 2018-09-14
      • 2010-09-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-25
      • 2014-04-23
      • 2012-05-08
      相关资源
      最近更新 更多