持續集成五 maven加入sonar

1.在maven的setting.xml配置中加入

<pluginGroups>
    <pluginGroup>org.sonarsource.scanner.maven</pluginGroup>
</pluginGroups>


  <profile>
            <id>sonar</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <sonar.host.url>http://192.168.0.111:9000</sonar.host.url> <!-- Sonar服務器訪問地址 -->
                <sonar.exclusions>**/Test*.java,**/*Test.java</sonar.exclusions>
            </properties>
        </profile>

 

在項目父依賴加入,讓sonar讀取這些報告

<properties>
    <sonar.java.spotbugs.reportPaths>./target/findbugsXml.xml</sonar.java.spotbugs.reportPaths>
    <sonar.java.pmd.reportPaths>./target/pmd.xml</sonar.java.pmd.reportPaths>
    <sonar.java.checkstyle.reportPaths>./target/checkstyle-result.xml</sonar.java.checkstyle.reportPaths>
</properties>

 

然後就可以執行
設置:dynamicAnalysis 是避免sonar:sonar命令刪除目錄
mvn sonar:sonar -Dmaven.sonar.dynamicAnalysis=reuseReports

如果不配做sonar地址,那麼在執行命令的時候加上sonar的死者

mvn sonar:sonar -Dmaven.sonar.dynamicAnalysis=reuseReports -Dsonar.host.url=http://xx

 

2.sonarQube 配置 

安裝插件:

  • sonarJava 新版是:Java Code Quality and Security

在線安裝會失敗,我們手動安裝;插件下載地址:https://docs.sonarqube.org/display/PLUG/Plugin+Library

如果使用dockers安裝的,那麼放到掛卷下面的目錄: sonarqube/extensions/plugins/ 

dockers裏的目錄地址:/opt/sonarqube/extensions/plugins

然後是jacoco配置:這裏不要配置,這裏是讀取jacoco  xml文件的,我們在項目裏生成的文件不是xml文件,

執行mvn sonar:sonar命令後,在檢查代碼的同時,他會請求sonarQube,讀取上面的配置,如果你配置了這一項,打印的日誌會報錯:補充

無法解析文件,導致覆蓋率爲0

 

 

 

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