Eclipse缩进多行变量赋值和类定义

时间:2017-08-13 13:04:42

标签: java eclipse autoformatting

我刚刚升级到Eclipse Oxygen,现在自动格式化让我发疯。我无法弄清楚如何让我的自定义格式化程序按照我希望的方式工作。

这是我的代码

public class SomeClass 
    extends SomeOtherClass
    implements SomeInterface
{

    private final int someVariableWithALongName
        = theValueReturnedFromAMethodWithAVeryLongName();

}

我喜欢这种缩进方式,我想保留它。不知何故,我将Eclipse的旧版本配置为不通过自动格式化删除此自定义缩进。在新的Oxygen中,自动格式化程序执行此操作:

public class SomeClass
extends SomeOtherClass
implements SomeInterface
{

    private final int someVariableWithALongName
    = theValueReturnedFromAMethodWithAVeryLongName();

}

我发现无法改变它。如果可能,我希望自定义格式化而不禁用自动格式化!

1 个答案:

答案 0 :(得分:0)

如果您基于内置的Eclipse配置文件创建新的格式化程序配置文件( Window> Preferences:Java> Code Style> Formatter ),则必须至少更改以下内容才能获取您的示例指定的格式(在当前的配置文件中,似乎只缺少第一个设置):

  • 换行
    • 包装行的默认缩进 设置为 1
    • 对于类声明> 'extends''implements'子句
      • 换行策略设置为换行第一个元素,必要时将其他元素
      • 检查强制拆分,即使行短于最大行宽
    • 表达式>分配
      • 换行策略设置为必要时换行
      • 检查操作员前的
  • 括号
    • 类或接口声明:下一行

要在保存时配置或禁用格式,请参阅: Automatically format and cleanup code every time you save (选项:格式化源代码