checkstyle 中的单行大括号给出错误

Man*_*uja 5 java checkstyle gradle

我希望 Java 中的 Checkstyle 不会给我以下代码行的任何错误 -

if (true) { return 1; }

但它给了我错误,'}' should have line break before.并且'{' should have line break after. 我的 LeftCurly 块如下:

 <module name="LeftCurly">
   <!-- Checks for placement of the left curly brace ('{'). -->
   <property name="severity" value="warning"/>
</module>
Run Code Online (Sandbox Code Playgroud)

我的 RightCurly 如下:

<module name="RightCurly">
  <property name="option" value="same"/>
  <property name="severity" value="warning"/>
</module>
Run Code Online (Sandbox Code Playgroud)

我的 NeedBraces 如下:

<module name="NeedBraces">
    <property name="severity" value="warning"/>
    <property name="tokens" value="LITERAL_FOR, LITERAL_WHILE, LITERAL_DO,    LITERAL_IF, LITERAL_ELSE"/>
</module>
Run Code Online (Sandbox Code Playgroud)

如何允许单行块在同一行上有左大括号和右大括号?谢谢!

我正在使用 Gradle Checkstyle 插件,Checkstyle 版本:6.7

Pow*_*tat 1

你的右卷曲选项“相同”意味着不同的东西:

大括号应与多块语句的下一部分位于同一行

因此,对于您的情况,您应该使用以下选项alone_or_singleline

<property name="option" value="alone_or_singleline"/>
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅rcurly

此外,考虑一致的代码风格以避免出现异常总是一个好主意!因此,考虑一下另一个开发人员,他将在一个月后将代码插入到您的块中 - 当块不在同一行时会更容易。