【问题标题】:Custom rule for multiple java classes多个java类的自定义规则
【发布时间】:2022-08-02 17:29:14
【问题描述】:

您能否让我知道是否有办法在跨越多个 Java 类时编写检查。

例如:我们要检查循环中是否有 DB 调用,在下面的示例中,第一类的调用是对第二类的调用。我们可以检查帮助方法是否是对 DB 的调用吗?是否可以为这种情况编写规则?

现有规则都没有跨越多个 java 类https://rules.sonarsource.com/java

第一个.java

public class First {
 public void method1(){
      Second secRef = new Second();
      List<String> res = new ArrayList<>();

      for(int i=0;i<n;i++){
           red.add(secRef.helper(i));
      }
 }
}

二.java

public class Second{
  public String helper(int i){
        //      call database
        
        String result;
        result = DAO.callSQL(i);
        return result;
  }
}

    标签: sonarqube sonarqube-scan sonar-plugin


    【解决方案1】:

    正如您在sonarqube wiki 中所问的那样,我相信使用 SonarQube 的经典自定义规则是不可能的。

    您可以尝试创建自己的工具来处理此类规则并将其与generic issue 格式集成。

    就个人而言,我们正在与Moose 合作,使用我们全新的 MooseCritic 工具来实施这样的规则。然而,它还远未准备好投入生产。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-04-22
      • 2017-09-21
      • 1970-01-01
      • 2016-12-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多