在Linux系統中sonar主要是用於管理代碼質量,而其中兩個重要的參數就是違規數和代碼行數了。本文就來介紹一下,Linux用sonar取得違規數和代碼行數的方法。
demo如下:
public class SonarDemo {
static String host = “http://xxx:9000”;
static String username = “xxx”;
static String password = “xxx”;
static String resourceKey = “org.codehaus.sonar:sonar-ws-client”;
static String[] MEASURES_TO_GET = new String[] { “violations”, “lines” };
public static void main(String[] args) {
DecimalFormat df = new DecimalFormat(“#.##”);
//創建Sonar
Sonar sonar = new Sonar(new HttpClient4Connector(new Host(host, username, password)));
//執行資源請求
ResourceQuery query = ResourceQuery.createForMetrics(resourceKey, MEASURES_TO_GET);
query.setIncludeTrends(true);
Resource resource = sonar.find(query);
// 循環遍歷獲取“violations”, “lines”
List《Measure》 allMeasures = resource.getMeasures();
for (Measure measure : allMeasures) {
System.out.println((measure.getMetricKey() + “: ” +
df.format(measure.getValue())));
}
}
}
pom文件dependency如下:
《dependency》
《groupId》org.codehaus.sonar《/groupId》
《artifactId》sonar-ws-client《/artifactId》
《!-- 推薦使用和SonarQube server相同的版本--》
《version》4.3《/version》
《/dependency》
《dependency》
《groupId》org.apache.httpcomponents《/groupId》
《artifactId》httpclient《/artifactId》
《version》4.3.4《/version》
《/dependency》
以上就是Linux用sonar取得違規數和代碼行數的方法了,取得違規數和代碼行數之後,就可以綜合分析,然後得出一段程序代碼的質量了。