1

我在 Sonar 中有一个名为 XMetObj 的自定义度量,位于域“复杂性”下。我已将“自定义措施”添加到项目中。现在,在尝试通过 java RESTful 客户端访问它时,应用程序无法检测到此措施。

    Sonar sonar = Sonar.create("http://localhost:9000", "admin", "admin");
    String prjKey = "sampletest:junit";
    Query<Resource> resourceQuery = ResourceQuery.createForMetrics(prjKey, "Custom Measures", "Complexity", "XMetObj");
    if(resourceQuery==null){
        return;
    }
    Resource metrics = sonar.find(resourceQuery);
    if(metrics==null){
        return;
    }
    List<Measure> measures = metrics.getMeasures();
    for(Measure m:measures){
        m.setData("metrics");
        System.out.println(m.getData());
    }

我能够获得某些项目的指标,但指标列表仍然为空。我也在尝试将新数据插入到这个自定义指标中,但这也失败了。这是显示指标的正确方法吗?我没有使用插件,因为度量值已经存储在数据库中,我希望这些值是特定于项目的,但具有来自外部数据源的内容。

4

1 回答 1

1

如果要检索指标的度量,则必须使用指标键,而不是指标名称:

ResourceQuery.createForMetrics(String resourceKeyOrId, String... metricKeys)

因此,要获得衡量标准,您必须执行以下操作:

ResourceQuery.createForMetrics(prjKey, "your_metric_key")

于 2012-08-22T13:36:39.593 回答