Eclipse格式化程序在linebreak上的方法之前插入空格

时间:2013-10-14 17:58:38

标签: java eclipse whitespace checkstyle

使用Eclipse Juno我使用Java代码格式化程序遇到了以下问题:

如果方法调用导致换行,Eclipse会在方法调用的“点”之前插入一个空格(_应表示空格)

int nbo = new Foo()//linebreak
    _.method();

不幸的是,这个空格会触发Checkstyle警告(NoWhitespaceBefore规则)。是否有可能阻止eclipse插入空格?或者它是Checkstyle配置问题吗?

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

您可以将最大线宽增加到120或更大的数字。

  1. 在菜单Windows上 - >首
  2. 导航到Java - >代码风格 - >格式化器
  3. 单击“编辑”按钮以打开新对话框
  4. 换行标签上,更改最大行宽
  5. 最后,更改个人资料名称,然后点击确定

答案 1 :(得分:0)

您可以通过更改格式化程序设置或更改Checkstyle配置来解决此问题。

选项1 - 格式化程序设置 (对于Eclipse 4.3,但对于Juno应该相同)

  • 窗口→首选项→Java→代码样式→格式化程序→编辑
  • 换行→功能调用→合格调用
  • 设置为不要换行

选项2 - Checkstyle配置

  • NoWhitespaceBefore 规则中删除DOT令牌:
<module name="NoWhitespaceBefore">
    <property name="tokens" value="SEMI,POST_DEC,POST_INC"/>
</module>
相关问题