Sonarqube 用于访问项目sonar Qube问题的示例客户端

Sonarqube 用于访问项目sonar Qube问题的示例客户端,sonarqube,Sonarqube,我需要样本java客户端代码来访问sonar Qube中的项目问题 我将传递项目密钥作为输入,并获取输出中的问题列表。您可以使用sonarqube客户端库: Builder builder = HttpConnector.newBuilder(); builder.url("http://xxxx:9000/sonar/"); builder.connectTimeoutMilliseconds(10000); HttpConnector httpConne

我需要样本java客户端代码来访问sonar Qube中的项目问题


我将传递项目密钥作为输入,并获取输出中的问题列表。

您可以使用sonarqube客户端库:

    Builder builder = HttpConnector.newBuilder();

    builder.url("http://xxxx:9000/sonar/");

    builder.connectTimeoutMilliseconds(10000);

    HttpConnector httpConnector = builder.build();

    SearchWsRequest searchWsRequest = new org.sonarqube.ws.client.issue.SearchWsRequest();

    List<String> projectKeys = new ArrayList<String>(1);

    projectKeys.add("project_key");

    searchWsRequest.setProjectKeys(projectKeys);

    final WsClient wsClient = WsClientFactories.getDefault().newClient(httpConnector);

    List<Issue> issues = wsClient.issues().search(searchWsRequest).getIssuesList();
Builder=HttpConnector.newBuilder();
builder.url(“http://xxxx:9000/sonar/");
builder.connecttimeoutms(10000);
HttpConnector HttpConnector=builder.build();
SearchWsRequest SearchWsRequest=new org.sonarqube.ws.client.issue.SearchWsRequest();
List projectKeys=newarraylist(1);
项目密钥。添加(“项目密钥”);
searchWsRequest.setProjectKeys(projectKeys);
最终WsClient WsClient=WsClientFactories.getDefault().newClient(httpConnector);
List issues=wsClient.issues().search(searchWsRequest.getIssuesList();
和使用

<dependency>
  <groupId>org.sonarsource.sonarqube</groupId>
  <artifactId>sonar-ws</artifactId>
  <version>5.6</version>
</dependency>

org.sonarsource.sonarqube
声纳ws
5.6

您可以使用sonarqube客户端库:

    Builder builder = HttpConnector.newBuilder();

    builder.url("http://xxxx:9000/sonar/");

    builder.connectTimeoutMilliseconds(10000);

    HttpConnector httpConnector = builder.build();

    SearchWsRequest searchWsRequest = new org.sonarqube.ws.client.issue.SearchWsRequest();

    List<String> projectKeys = new ArrayList<String>(1);

    projectKeys.add("project_key");

    searchWsRequest.setProjectKeys(projectKeys);

    final WsClient wsClient = WsClientFactories.getDefault().newClient(httpConnector);

    List<Issue> issues = wsClient.issues().search(searchWsRequest).getIssuesList();
Builder=HttpConnector.newBuilder();
builder.url(“http://xxxx:9000/sonar/");
builder.connecttimeoutms(10000);
HttpConnector HttpConnector=builder.build();
SearchWsRequest SearchWsRequest=new org.sonarqube.ws.client.issue.SearchWsRequest();
List projectKeys=newarraylist(1);
项目密钥。添加(“项目密钥”);
searchWsRequest.setProjectKeys(projectKeys);
最终WsClient WsClient=WsClientFactories.getDefault().newClient(httpConnector);
List issues=wsClient.issues().search(searchWsRequest.getIssuesList();
和使用

<dependency>
  <groupId>org.sonarsource.sonarqube</groupId>
  <artifactId>sonar-ws</artifactId>
  <version>5.6</version>
</dependency>

org.sonarsource.sonarqube
声纳ws
5.6

更新了Sonarqube 8.2.Blarghminorvision的源代码。使用Maxence LeConte提供的优秀示例只需稍作修改

import java.util.ArrayList;
导入java.util.List;
导入org.sonarqube.ws.Issues.Issue;
导入org.sonarqube.ws.Issues.SearchWsResponse;
导入org.sonarqube.ws.client.HttpConnector;
导入org.sonarqube.ws.client.HttpConnector.Builder;
导入org.sonarqube.ws.client.WsClient;
导入org.sonarqube.ws.client.WsClientFactories;
导入org.sonarqube.ws.client.issues.SearchRequest;
公共类SimpleClient{
公共静态void main(字符串[]args){
Builder=HttpConnector.newBuilder();
builder.url(“http://xxxx:9000/");
builder.connecttimeoutms(10000);
HttpConnector HttpConnector=builder.build();
SearchRequest searchWsRequest=new org.sonarqube.ws.client.issues.SearchRequest();
List componentKeys=new ArrayList(1);
组件键。添加(“项目键”);
searchWsRequest.setComponentKeys(componentKeys);
最终WsClient WsClient=WsClientFactories.getDefault().newClient(httpConnector);
SearchWsResponse-response=wsClient.issues().search(searchWsRequest);
System.out.println(“找到的总数:+response.getTotal());
List issues=wsClient.issues().search(searchWsRequest.getIssuesList();
针对(问题:问题){
System.out.println(“=============================================================”);
System.out.println(issue.toString());
}
}
}

org.sonarsource.sonarqube
声纳ws
8.2.0.32929

更新了Sonarqube 8.2.Blarghminorvision的源代码。使用Maxence LeConte提供的优秀示例只需稍作修改

import java.util.ArrayList;
导入java.util.List;
导入org.sonarqube.ws.Issues.Issue;
导入org.sonarqube.ws.Issues.SearchWsResponse;
导入org.sonarqube.ws.client.HttpConnector;
导入org.sonarqube.ws.client.HttpConnector.Builder;
导入org.sonarqube.ws.client.WsClient;
导入org.sonarqube.ws.client.WsClientFactories;
导入org.sonarqube.ws.client.issues.SearchRequest;
公共类SimpleClient{
公共静态void main(字符串[]args){
Builder=HttpConnector.newBuilder();
builder.url(“http://xxxx:9000/");
builder.connecttimeoutms(10000);
HttpConnector HttpConnector=builder.build();
SearchRequest searchWsRequest=new org.sonarqube.ws.client.issues.SearchRequest();
List componentKeys=new ArrayList(1);
组件键。添加(“项目键”);
searchWsRequest.setComponentKeys(componentKeys);
最终WsClient WsClient=WsClientFactories.getDefault().newClient(httpConnector);
SearchWsResponse-response=wsClient.issues().search(searchWsRequest);
System.out.println(“找到的总数:+response.getTotal());
List issues=wsClient.issues().search(searchWsRequest.getIssuesList();
针对(问题:问题){
System.out.println(“=============================================================”);
System.out.println(issue.toString());
}
}
}

org.sonarsource.sonarqube
声纳ws
8.2.0.32929

亲爱的Maxence,感谢您抽出时间在这里回答。我的旅程是尝试使用RESTAPI,然后尝试使用jsonschema2pojo,然后了解sonar ws generator和sonar ws子项目,然后尝试了解如何最好地使用它们。。。然后终于到了这里。真是浪费时间。。。但这是一个多么美好的结局!干杯,伙计!亲爱的Maxence,我想感谢您抽出时间在这里回答。我的旅程是尝试使用RESTAPI,然后尝试使用jsonschema2pojo,然后了解sonar ws generator和sonar ws子项目,然后尝试了解如何最好地使用它们。。。然后终于到了这里。真是浪费时间。。。但这是一个多么美好的结局!干杯,伙计!