Jenkins 集成 SonarQube Scanner


1.   安裝Jenkins

下載安裝包,這里我們下載war包

https://jenkins.io/download/

運行jenkins.war的方式有兩種:

第一種:將其放到tomcat中運行(放到webapps目錄下,啟動tomcat)

第二種:直接執行  java -jar jenkins.war --httpPort=8080

https://jenkins.io/doc/pipeline/tour/getting-started/

這里我們選擇第一種方式

啟動tomcat(bin/startup.sh)以后訪問 http://localhost:8080/jenkins/

至此,jenkins安裝完成

 

2.  安裝SonarQube Scanner插件

2.1.  安裝插件

https://plugins.jenkins.io/sonar

重啟jenkins

 

2.1.  配置SonarQube

首先,在SonarQube中生成一個Token(PS:用token代替輸入用戶名和密碼)

然后,在Jenkins中配置連接sonarqube服務器的地址,這里用到的token就是剛才在sonarqube中創建的那個token

最后,配置全局工具配置

 

3.  創建任務

最最重要的是,配置SonarQube analysis properties

可以將其單獨寫到一個配置文件(sonar-project.properties)里面,也可以像這樣每次都寫一遍

sonar.projectKey=ks-cms-unicorn
sonar.projectName=ks-cms-unicorn
sonar.projectVersion=1.0

sonar.language=java
sonar.sourceEncoding=UTF-8

sonar.sources=$WORKSPACE
sonar.java.binaries=$WORKSPACE

其中,sonar.java.binaries屬性至關重要,筆者也是試了好多次

相關文檔在這里:

https://github.com/SonarSource/sonar-scanning-examples/blob/master/sonarqube-scanner/sonar-project.properties

https://docs.sonarqube.org/display/PLUG/Java+Plugin+and+Bytecode

本例中,創建了兩個任務,方法同上

可以看到,每次構建任務都會生成一次報告

這種方式比Maven那種方式要好很多,在實際的項目中多用此方式

 

3.  參考及文檔

https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+Jenkins

 

4.  補充:SonarQube中文界面

首先,下載中文語言包 sonar-l10n-zh-plugin.jar

然后,將其放入sonar安裝目錄的 extensions/plugins 目錄下

最后,重啟SonarQube

https://search.maven.org/search?q=sonar-l10n-zh-plugin

最后再補充一個使用Maven方式與服務器同步報告的命令

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM