Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java中为sonar设置自定义复杂性限制?_Java_Sonarqube_Complexity Theory_Cyclomatic Complexity - Fatal编程技术网

如何在java中为sonar设置自定义复杂性限制?

如何在java中为sonar设置自定义复杂性限制?,java,sonarqube,complexity-theory,cyclomatic-complexity,Java,Sonarqube,Complexity Theory,Cyclomatic Complexity,有没有办法设定声纳的复杂度限制? 我喜欢非常简单的代码,最多是一个if或循环,但我找不到像sonar.cpd.java.minimumtokens或sonar.cpd.java.minimumLines这样的设置,因为存在代码复制,并且似乎不起作用,但这将是另一个问题 我想降低方法的圈复杂度限制,以及一个类中方法的最大数量。对于后者,行限制是可以的。 如何设置这些复杂度限制?SonarQube提供了一些针对圈复杂度的Java规则。配置它们的唯一方法是使用专用的质量配置文件。默认情况下,Sonar

有没有办法设定声纳的复杂度限制? 我喜欢非常简单的代码,最多是一个if或循环,但我找不到像sonar.cpd.java.minimumtokens或sonar.cpd.java.minimumLines这样的设置,因为存在代码复制,并且似乎不起作用,但这将是另一个问题

我想降低方法的圈复杂度限制,以及一个类中方法的最大数量。对于后者,行限制是可以的。
如何设置这些复杂度限制?

SonarQube提供了一些针对圈复杂度的Java规则。配置它们的唯一方法是使用专用的质量配置文件。默认情况下,SonarWay质量配置文件使用固定阈值。但是,这些规则是可参数化的,您可以在创建除默认SonarQube的SonarWay配置文件之外的质量配置文件后立即配置它们。然后,您必须将项目配置为依赖于此新的质量配置文件,而不是传统方式

请参考以下规则:

:方法不应太复杂默认阈值:10 :类不应太复杂默认最大值:200-不推荐使用的规则 我还建议您看看另一条与复杂性相关的规则:

:方法的认知复杂性不应太高 此规则依赖于的概念,旨在弥补圈复杂度的缺点,并生成一个更准确地反映理解相对困难的度量,从而更准确地反映维护方法、类和应用程序的相对困难