4

我目前在 Eclipse Juno 4.2 上工作(但问题也与 eclipse 的旧版本有关),我发现了一个恼人的问题。当我们尝试使用默认格式化程序设置创建新类时,eclipse 在文件末尾放置一个空行。

在此处输入图像描述

我试图自己弄清楚如何删除这个烦人的行并在格式化程序选项中搜索。我找到了可以帮助解决我的问题的选项,但我发现默认情况下它是禁用的。

在此处输入图像描述

我的问题是:如何摆脱这条线?

4

1 回答 1

7

这不是一个真正的空行。它只是在 Eclipse 中以这种方式出现。

当您在 Eclipse 中看到空行时,表示文件的最后一行以换行符终止。也就是说,Java 文件中的最后一个字符可能是}\n(在 *nix 上,以 LF 行结尾)或}\r\n(在 Windows 上以 CRLF 行结尾),在每种情况下都跟在文件末尾。

您可以使用tailcat在 *nix 上向自己证明这一点。如果提示与最后一行代码出现在同一行,则没有尾随的新行。如果提示出现在单独的行上,则后面有一个换行符。如果提示之前有一个空行,那么文件中有一个空行。

如果以上内容不能说服您,请使用十六进制编辑器。:o) 空行将显示为两个连续的行尾:\n\n\r\n\r\n(分别在 *nix 和 windows 上)。

文件的最后一行末尾有换行符没有任何问题。事实上,将它留在那里是个好主意,因为如果它不存在,一些工具会发出警告。这些工具包括Checkstyle(有一个Eclipse Checkstyle 插件)和diff.

Eclipse 允许您将光标放在那里,以防您想在文件末尾添加新内容。(这在 Java 中并不经常需要,因为大多数人不会在一个文件中放置多个顶级类型。)

最好把它放在那里,并习惯 Eclipse 显示它。

于 2012-11-20T17:48:09.423 回答