4

我认为,在 Eclipse 内置的 Java 格式化程序中有一个小但令人讨厌的错误。我有一个如下所示的 Javadoc 注释:

/**
 * - - - stuff - - - {@code mTasksBelow}.
 */

其中末尾的句点在第 81 列中。格式化程序设置为在第 80 行包装 Javadoc 注释。不幸的是,当我格式化代码时,它会这样做:

/**
 * - - - stuff - - - {@code mTasksBelow}
 * .
 */

这会在生成的输出中的文本和句点之间放置空白,因此以 HTML 格式呈现 Javadoc 的浏览器也会认为可以在此处中断。

除非句点跟在 Javadoc 标记之后,否则这似乎不会发生。(例如,如果该行以右括号和第 81 列中的句点结尾,则它会在最后一个单词之前正确中断。)

我可以移动换行列,但这只会解决问题。我不想关闭换行符,因为我希望我的 Javadoc 源代码与生成的输出一样具有可读性。是否有一些我缺少的设置或者这实际上是一个错误?

4

2 回答 2

2

好吧,对此有一个不那么有趣的工作。要解决此问题,请尝试在 Eclipse 格式化程序中启用 Off/On 标签。

窗口 -> 首选项 -> Java -> 格式化程序 -> 编辑 -> 关闭/开启标签 -> 启用关闭/开启标签

然后你需要用这些标签包围你的注释,这样格式化程序就不会触及它(请注意,标签需要位于单独的注释块中,否则 Eclipse 将忽略它们)。例如:

//@formatter:off
/**
 * Oddly formatted comment.              MUHAHAHAHAH :)
 **/
//@formatter:on

Presto...格式化程序不会碰它。在 Fedora 17 上的 Juno 上测试。希望有帮助。

于 2012-10-19T23:34:06.260 回答
0

好吧,它现在是一个新的Eclipse 错误。它显然仍会出现在最初的 Indigo 版本中。

于 2011-06-16T19:23:57.050 回答