我在Sonar中有一个名为XMetObj的自定义度量,名为“Complexity”。我已将“自定义度量”添加到项目中。 现在,在尝试通过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());
}
我能够获得某些项目的指标,但是度量列表仍然是空的。 我也在尝试将新数据插入此自定义指标中,但这也是失败的。 这是显示指标的正确方法吗?我没有使用插件,因为度量值已经存储在数据库中,我希望这些值是项目特定的,但是包含来自外部数据源的内容。
答案 0 :(得分:1)
如果要检索指标的度量,则必须使用度量标准密钥,而不是度量标准名称:
ResourceQuery.createForMetrics(String resourceKeyOrId, String... metricKeys)
为了得到你的衡量标准,你必须做一些事情:
ResourceQuery.createForMetrics(prjKey, "your_metric_key")