Sonarqube: Configuring / Suppressing Squid Rules

I spent the whole day porting all the PMD and Checkstyle rules to the new Squid rules, since PMD / Checkstyle is marked as deprecated.

However, some of the fine-tuning options I'm used to with PMD / CS are missing from Squid.

As a result, Sonar is cluttered with thousands of questions that tell nothing of real value.

Example 1

Rule: BadConstantName_S00115_Check / S00115

All our enumerations are implemented using camelCase instead of CONSTANT_NAME, for example:

public enum Classification {
    PoorMinus(1),
    Poor(2),
    PoorPlus(3),
    OrdinaryMinus(4),
    Ordinary(5),

easier to read than:

public enum Classification {
    POOR_MINUS(1),
    POOR(2),
    POOR_PLUS(3),

This is done to improve readability when referenced elsewhere in the code (using static import)

So, I’m looking for a way to suppress this rule for enumerations, since we want to save the rule for “real” constants.

Example 2

: MethodCyclomaticComplexity

equals hashcode. ( CS )

( ) , Eclipse/IntelliJ. "-"

/

3

:

javadoc ( ) ( /). , . ,

CHALLENGE

- , ? / SonarQube, .

, , . , , .

(, , ), .

?

Github, . , , .

+1
2

, . SonarSource .

Java,

+6

, , - :

http://www.sonarqube.org/already-158-checkstyle-and-pmd-rules-deprecated-by-sonarqube-java-rules/

: .

PS: - PMD, Checkstyle Findbugs SonarQubes, .

PMD . PMD 5, , , SonarQube 4.2 pmd-.

+1

All Articles