1

ドメイン「Complexity」の下に、XMetObj という名前の Sonar のカスタム メジャーがあります。プロジェクトに「カスタム メジャー」を追加しました。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 に答える