linux上配置Sonar代碼掃描


技術選型

下載地址:鏈接:https://pan.baidu.com/s/1bak9cDDc2Edc4S3gn4fFsA    提取碼:tas3

數據庫 mysql5.6   ~   mysql5.7
代碼分析 sonarqube-7.6
掃描器 sonar-scanner-cli-4.0.0.1744-linux
漢化包 sonar-l10n-zh-plugin-1.26.jar

 

 

 

 

 

 

 

安裝sonarqube

1. 上傳並解壓sonarqube

  

2 創建用戶(elasticsearch不能以root用戶啟動),並賦予權限

創建用戶

# useradd sonar

# passwd sonar

賦予權限

# chown -R sonar.sonar /usr/local/userfile/sonarqube-7.6

3. 編輯sonar.properties文件(默認啟動端口9000,我這里修改了8010)

vim  sonarqube-7.6/conf/sonar.properties

sonar.web.port=8010
sonar.jdbc.url=jdbc:mysql://127.0.0.1:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
sonar.jdbc.username=root
sonar.jdbc.password=root

創建數據庫

CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;

4. 切換用戶,啟動SonarQube

切換至sonar用戶下啟動sonar

# su  sonar

啟動 SonarQube

# cd /usr/local/userfile/sonarqube-7.6/bin/linux-x86-64

# ./sonar.sh start

瀏覽器測試    192.168.200.100:8010

用戶名:admin

密碼:admin

【漢化】

將 sonar-l10n-zh-plugin-1.26.jar 漢化包,放到 sonarqube-7.6/extensions/plugins 目錄下, 重啟sonar就好了。

# ./sonar.sh restart

掃描項目

1. 在項目的根目錄下創建 sonar-project.properties 文件

  

sonar.projectKey=【項目唯一標識】
sonar.projectName=
sonar.projectVersion=1.0

sonar.sources=【項目所在路徑】
sonar.exclusions=**/test/**,**/target/**
sonar.java.binaries=target/classes

sonar.java.source=1.8
sonar.java.target=1.8
sonar.sourceEncoding=UTF-8
sonar-project.properties

 然后再sonar面板創建項目配置掃描,將sonar的maven命令  復制到  項目的根目錄下  去執行就好了。

  

 此時就可以看到我們檢查信息

  

安裝 sonar-scanner-cli 掃描器

  上面我們安裝好sonarqube之后,后續沒法手動再次掃描,所以我們就會用到這個工具了。

 1. 解壓 安裝包

   

 2. 配置環境變量  vim /etc/profile

   

export SONAR_RUNNER_HOME=/usr/local/userfile/sonar-scanner-4.0.0.1744-linux/
 
$SONAR_RUNNER_HOME/bin

然后   source /etc/profile 刷新文件就好了

3. 配置數據庫信息(由於我上面把sonar默認的9000端口改了,所以我這里也要指定下sonar的端口)

  vim sonar-scanner-4.0.0.1744-linux/conf/sonar-scanner.properties

#----- Default SonarQube server
sonar.host.url=http://localhost:8010

#----- Default source code encoding
#sonar.sourceEncoding=UTF-8

sonar.jdbc.url=jdbc:mysql://127.0.0.1:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
sonar.jdbc.username=root
sonar.jdbc.password=root
sonar.sorceEncoding=UTF-8
sonar.login=admin
sonar.password=admin

4. 然后我們在項目的根目錄,也就是  sonar-project.properties  所在的目錄執行命令就能掃描了。(我們可以寫成命令,通過jenkins來觸發或者用定時任務腳本來執行)

  # sonar-scanner

 


免責聲明!

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



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