如何用eclipse“正确地”缩进stream畅的界面模式?

我只是为stream畅的接口创build了一个生成器。 现在我有很多代码看起来像这样:

new MyFluentInterface() .setFirst( "first" ) .setSecond( "second" ) .setThird( "third" ) .invoke( obj ); 

我喜欢上面显示的缩进,但我找不到一种方法来configurationeclipse来正确缩进。

日食总是像这样缩进:

 new MyFluentInterface() .setFirst( "first" ) .setSecond( "second" ) .setThird( "third" ) .invoke( obj ); 

我如何configurationeclipse,使其缩进这个stream畅的界面模式,如我的第一个代码示例中所示?

使用Eclipse 3.6,通过configuration您自定义的Java>代码样式>格式化程序configuration文件,这似乎是可行的。 编辑它并转到“ 换行”选项卡,然后select函数调用>合格调用 。 然后,在合格调用设置中 ,configuration如下所示:

替代文字

这将(应该)产生预期的结果:

 SomeEntity e1 = new SomeEntity.Builder() .age(10) .amount(10.0d) .firstname("foo") .lastname("bar") .build(); 

但这显然会影响到我个人不喜欢的所有代码。 所以我使用了Eclipse 3.6中新的Off / On Tags (编辑configuration文件时的最后一个选项卡):

替代文字

并附上没有得到格式化的部分,我自己做:

 // @formatter:off SomeEntity e2 = new SomeEntity.Builder() .age(10) .amount(10.0d) .firstname("foo") .lastname("bar") .build(); // @formatter:on 

select你的毒药:)