Java 你会吹毛求疵吗&引用;右大括号和下一个“;“否则”&引用;捕获;及;最后";关键字应位于同一行上“;

Java 你会吹毛求疵吗&引用;右大括号和下一个“;“否则”&引用;捕获;及;最后";关键字应位于同一行上“;,java,sonarqube,Java,Sonarqube,我运行流行的Java代码质量工具,并观察它的建议。我看到它在下面报告了严重程度为“重大”的问题 您可以看到该规则的兼容和不兼容代码,如下所示 if(something) { executeTask(); } else if (somethingElse) { // **Compliant** doSomethingElse(); } else { // **Noncompliant**

我运行流行的Java代码质量工具,并观察它的建议。我看到它在下面报告了严重程度为“重大”的问题

您可以看到该规则的兼容和不兼容代码,如下所示

  if(something) {
    executeTask();
  } else if (somethingElse) {          // **Compliant**
    doSomethingElse();
  }
  else {                               // **Noncompliant**
     generateError();
  }
我觉得,这是开发商的自由裁量权,至少不应以“重大”严重性报告该问题。(“轻微”或“信息”严重性可以通过适当的理由确定。)

你有什么理由解释为什么会有这样的建议

第二,对于那些在相当长的一段时间内一直在使用代码质量工具的观众来说,我的问题是,我需要对代码质量工具有多认真


(我发现了一些文章,实际上支持“不合规”的书写方式,如果是else或try catch finally。)

毫不奇怪,您的代码被视为不合规-它违反了。遵循代码约定与否,但要考虑的是,以普通样式编写的代码更容易理解。 根据Java代码约定,if else语句应具有以下形式:

if (condition) {
    statements;
} else {
    statements;
}
try-catch语句应具有以下格式:

try {
    statements;
} catch (ExceptionClass e) {
    statements;
}

毫不奇怪,您的代码被视为不合规的-它违反了。遵循代码约定与否,但要考虑的是,以普通样式编写的代码更容易理解。 根据Java代码约定,if else语句应具有以下形式:

if (condition) {
    statements;
} else {
    statements;
}
try-catch语句应具有以下格式:

try {
    statements;
} catch (ExceptionClass e) {
    statements;
}

如果您不想麻烦处理像这样的代码约定,您可以从质量配置文件中禁用该规则,甚至更改其严重性。默认的“SonarQube Way”质量配置文件只是广泛接受的最佳实践的一种指示,但最终您有责任根据自己的需要对其进行调整。

如果您不想麻烦处理像这样的代码约定,您可以从质量配置文件中禁用该规则,甚至更改其严重性。默认的“SonarQube-Way”质量配置文件只是广泛接受的最佳实践的一个标志,但最终您有责任根据自己的需要对其进行调整。

是否有证据表明该商店遵循Java编码惯例?@EJP,问题是为什么SonarQube将这个无关紧要的问题视为majorIt?问题中是否有证据表明该商店遵循Java编码惯例?@EJP,问题是为什么SonarQube将这个无关紧要的问题视为majorIt的不一致。这对你来说,还是在你的工作场所,都是一个只有你才能回答的问题。有太多的钱浪费在这样的琐事上了。这是不一致的。这对你来说,还是在你的工作场所,都是一个只有你才能回答的问题。有太多的钱浪费在这样的琐事上了。