Добавьте пользовательское исключение к правилу SonarQube «Методы не должны иметь слишком много параметров». - PullRequest
0 голосов
/ 30 октября 2019

В правилах сонара есть правило S00107 для " Методы не должны иметь слишком много параметров ". В этом правиле есть исключения для некоторых аннотаций:

Исключения

Методы, аннотированные Spring Spring @RequestMapping (и связанные ярлыки, такие как @GetRequest) или @JsonCreator могутимеет много параметров, возможна инкапсуляция. Поэтому такие методы игнорируются.

Можно ли добавить другие аннотации к этим исключениям?

Мой случай: У меня есть конструкторы, аннотированные Lombok's @Builder, в котором много параметров! Поэтому я хочу игнорировать это правило для этих конструкторов.

public class MyClass extends MySupperClass {
  @Builder
  public MyClass(String a, int b, ..., String z) {
  }
}

1 Ответ

0 голосов
/ 30 октября 2019

Переместить @Builder на уровень класса,

Если вам нужны суперполя, используйте lombok's @ SuperBuilder на уровне класса

Аннотация @SuperBuilder создает сложныйAPI-интерфейсы для ваших классов. В отличие от @Builder, @ SuperBuilder также работает с полями из суперклассов

...