【问题标题】:How find specific code occurrences in java code with sonar rule如何使用声纳规则在 java 代码中查找特定代码出现
【发布时间】:2018-12-05 02:52:54
【问题描述】:

我希望给开发者一些建议,例如:不推荐使用 System.currentTimeMillis(),并为一些 cmets 提供替代解决方案。

AFAIK 没有这样的声纳规则,我应该创建一个新规则还是可以选择参数化现有规则?

我发现不再支持java的xpath,所以我说编写自定义规则是唯一的方法吗?

【问题讨论】:

    标签: java sonarqube


    【解决方案1】:

    您正在寻找模板规则S2253,它允许您标记对特定方法的调用。

    【讨论】:

      【解决方案2】:

      这是使用声纳设置自定义方法警告的example

      @Rule(key = "NoObjectWaitRule",
              name = "NoObjectWaitRule",
              description = "You should not use classic wait/notify mechanism. Instead use Java Concurrency API.",
              priority = Priority.MAJOR,
              tags =
              {
                  "bad-practice"
              })
      public class NoObjectWaitRule extends DisallowedMethodCheck
      {
      
         public NoObjectWaitRule()
          {
              super.setClassName("java.lang.Object");
              super.setMethodName("wait");
              super.setAllOverloads(true);
          }
      
      }
      

      【讨论】:

        猜你喜欢
        • 2019-10-25
        • 1970-01-01
        • 1970-01-01
        • 2018-03-24
        • 2013-01-26
        • 2017-06-11
        • 2018-12-06
        • 2016-05-26
        • 1970-01-01
        相关资源
        最近更新 更多