如何强制Eclipse Mars 4.5格式化程序不加入已包装的行?

时间:2015-06-25 10:40:38

标签: java eclipse eclipse-mars eclipse-formatter

我刚刚从日食开普勒转移到日食火星,我的Java格式化程序似乎不再像以前那样表现了。

我曾经能够做到以下几点:

object
    .method1()
    .method2()
    .method3();

格式化程序会保留我的代码。然而,自从我改为日食火星后,一切都被包裹在一条线上。

我已经验证了格式化程序,我仍然可以选择"从不加入已包装的行"检查。我的项目没有使用有关eclipse格式化程序的特定设置。我尝试从头开始重新创建格式化程序,结果是一样的。

如何强制eclipse不加入这些行?

由于

2 个答案:

答案 0 :(得分:8)

我找到了解决方案:我选择了所有特定元素(注释,类声明,...)并定义了Wrap where necessary而不是我常用的Do not wrap。然后我将maximum line width设置为一个较高的值,以便Wrap when necessary永远不会包装任何内容。这似乎足以让我已经包装的行不被连接,并保持格式化程序的默认行为为#34;不要包装"。

编辑:即使这是解决手头问题的解决方案,我还遇到了Eclipse Mars的格式化程序更多的问题让我回到开普勒。我试过Luna,似乎没有同样的问题。我可能会转向Luna。

编辑:我切换到Luna,一切正常

编辑:我尝试了新的Mars.1,即使我没有完全相同的格式,但是修复了很多错误,这对我来说已经足够了项目。我可能会在适当的时候将所有项目都转换到那里。

答案 1 :(得分:1)

将此行添加到profile.xml,或将属性设置为forloop.counter(如果已存在)。

for

可以找到示例xml here