Sonarqube+maven 分析代碼


Sonar是一個用於代碼質量管理的開源平臺,用於管理Java源代碼的質量。通過插件機制,Sonar 可以集成不同的測試工具,代碼分析工具,以及持續集成工具,比如pmd-cpd、checkstyle、findbugs、Jenkins。通過不同的插件對這些結果進行再加工處理,通過量化的方式度量代碼質量的變化,從而可以方便地對不同規模和種類的工程進行代碼質量管理。同時 Sonar 還對大量的持續集成工具提供了接口支持,可以很方便地在持續集成中使用 Sonar。此外,Sonar 的插件還可以對 Java 以外的其他編程語言提供支持,對國際化以及報告文檔化也有良好的支持。

使用步驟:

一、方式1

1. 配置

在maven安裝目錄conf/settings.xml文件中添加:

      <profile>
                <id>sonar</id>
                <activation>
                   <activeByDefault>true</activeByDefault>
                </activation>
                <properties>
                   <!-- 平臺登錄的賬號的用戶名,格式:姓全拼+名第一個字母 -->
                   <sonar.login>admin</sonar.login>
                   <!-- SonarQube平臺登錄的賬號的密碼,格式:姓全拼+名第一個字母 -->
                  <sonar.password>admin</sonar.password>
                  <!-- SonarQube訪問地址 -->
                  <sonar.host.url>http://localhost:9000</sonar.host.url>
                  <!-- 代碼分析包括哪些文件需要分析,英文逗號分隔  -->
                  <sonar.inclusions>**/*.java,**/*.xml</sonar.inclusions>
              </properties>   
         </profile>            
         <activeProfiles>
             <!-- 這步配置,sonar的profile配置才能生效 -->
            <activeProfile>sonar</activeProfile>
        </activeProfiles>
2. 編譯項目執行命令
2.1.編譯項目
mvn clean install -DskipTests

在這裏插入圖片描述

2.2.代碼分析
mvn sonar:sonar

在這裏插入圖片描述

3. 分析結果

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

4. 解決bug
5. 項目名稱

sonarqube 讀取的是pom文件中的name標籤

二、方式2

mvn sonar:sonar -Dsonar.host.url=http://localhost:9000 -Dsonar.java.binaries=target/sonar -Dsonar.sorceEncoding=UTF-8 -Dsonar.login=admin -Dsonar.password=admin

也可以寫成這樣

mvn sonar:sonar \
-Dsonar.host.url=http://localhost:9000 \ 
-Dsonar.java.binaries=target/sonar \ 
-Dsonar.sorceEncoding=UTF-8 \ 
-Dsonar.login=admin \ 
-Dsonar.password=admin

三、方式3

mvn sonar:sonar \
-Dsonar.host.url=http://localhost:9000 \ 
-Dsonar.login=a0c23c5b0a5654c241963abebc0a159b8e6a1fb5 \
-Dsonar.java.binaries=target/sonar \ 
-Dsonar.sorceEncoding=UTF-8

token獲取
在這裏插入圖片描述
在這裏插入圖片描述

總結:
maven這幾種方式有一個共同點就是:
maven掃描原理是藉助maven-sonar整合插件進行掃描,因此,需要提前將插件下載完畢,關於內網的話,建議提前將插件下載好,分享給他們,或者連自己的手機熱點下載插件依賴,好處是可以之下載即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章