我試圖使用sonar-ws-5.6.jar
獲取特定項目中未解決的錯誤和漏洞的總數。Sonar WS:如何使用Sonar Webservice獲取未解決的總計錯誤數
我試圖將類型作爲BUG傳遞給搜索查詢。但我仍然得到所有未解決的問題。它沒有采用參數類型。
如何使用Webservice獲取確切數量的錯誤和漏洞?
這裏是我的代碼連接到聲納和獲取數據。
import java.util.ArrayList;
import java.util.List;
import org.sonarqube.ws.Issues.SearchWsResponse;
import org.sonarqube.ws.client.HttpConnector;
import org.sonarqube.ws.client.WsClient;
import org.sonarqube.ws.client.WsClientFactories;
import org.sonarqube.ws.client.issue.SearchWsRequest;
public class SonarTest {
static String resourceKey = "com.company.projectname:parent";
public static void main(String[] args) {
try {
// Get Issue
HttpConnector httpConnector = HttpConnector.newBuilder().url("http://localhost:9000").credentials("admin", "admin").build();
SearchWsRequest issueSearchRequest = new SearchWsRequest();
issueSearchRequest.setPageSize(1000);
issueSearchRequest.setResolved(false);
List<String> bugTypesList = new ArrayList<String>();
bugTypesList.add("BUG");
issueSearchRequest.setTypes(bugTypesList);
WsClient wsClient = WsClientFactories.getDefault().newClient(httpConnector);
SearchWsResponse issuesResponse = wsClient.issues().search(issueSearchRequest);
System.out.println(issuesResponse.getIssuesList());
System.out.println("DONE");
} catch (Exception e) {
e.printStackTrace();
}
}
}
注:我使用sonarqube 5.6和Java 1.8
截至目前我循環響應並獲得
List<Issue> issueList = issuesResponse.getIssuesList();
int bugCount = 0;
for(Issue issue : issueList){
if(issue.getType() == RuleType.BUG){
bugCount ++;
}
}
感謝您的回覆。我無法在搜索方法中找到setParam(「types」,inlineMultipleParamValue(request.getTypes()))。可能是這個問題。 – Unknown