sonar-scanner的使用


在服務器搭建sonarqube后,本地的windows個人電腦如何使用sonar-scanner?

在服務器搭建sonarqube后,每個人都可以在本地使用sonar-scanner掃描代碼。

sonarqube與sonar-scanner的關系

一、本地電腦安裝jdk

至少安裝1.8版本以上的jdk,安裝后配置后環境變量。

二、下載sonar-scanner

三、將sonar-scanner添加到環境變量

下載后解壓

方法1:直接將bin目錄添加到path環境變量中

如:E:\sonar-scanner-cli-4.6.2.2472-windows\sonar-scanner-4.6.2.2472-windows\bin

方法2:先將一個SONAR_SCANNER_HOME,再添加到path環境變量中


注意:SONAR_SCANNER_HOME是填寫到sonar-scanner的根目錄,E:\sonar-scanner-cli-4.6.2.2472-windows

然后path添加:%SONAR_SCANNER_HOME%\bin

之后,打開cmd,輸入:sonar-scanner -version,如下圖所示,代表環境變量配置正確

如果出現:不是內部命令、外部命令的提示,代表環境變量沒有配置正確

四、修改sonar-scanner配置文件

進入conf:E:\sonar-scanner-cli-4.6.2.2472-windows\sonar-scanner-4.6.2.2472-windows\conf,找到sonar-scanner.properties文件

配置sonarqube服務器地址,數據庫地址,編碼格式

sonar.host.url=http://192.168.2.122:9000/code_scan
#----- Default source code encoding
#配置編碼格式
sonar.sourceEncoding=UTF-8
#數據庫配置
sonar.jdbc.url=jdbc:postgresql://192.168.2.122:5432/code_scan
useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
sonar.jdbc.username=postgres
sonar.jdbc.password=123456

五、將項目拉到本地並添加配置文件

假設需要掃描的項目是:G:\sonar-scanning-examples-master\sonarqube-scanner\src,掃描其中的python目錄

添加一個sonar-project.properties文件

可以是txt文件直接把后綴改為.properties
sonar-project.properties文件是放到項目目錄里

配置文件的說明

  • sonarprojectKey=在sonarQube上的實例鍵名(必須是唯一的,不可重復相同)

  • sonar.projectName=在sonarQube上的項目名稱

  • sonar.projectVersion=1.0(項目版本號,可以不指定)

  • sonar.sources=.(java源代碼目錄指定,可以知道掃描目錄,填寫sonar-project.properties文件所在目錄的相對路徑)
    如下圖,sonar-project.properties文件在G:\sonar-scanning-examples-master\sonarqube-scanner\src
    想要掃描python目錄,就直接填寫:sonar.sources=python

  • sonarsourceEncoding=UTF-8(編碼格式指定)

  • sonar.language=java(指明只掃描ava語言)

  • sonarjava.binaries=target/classes(class文件的目錄)

六、獲取掃描命令

可以從sonarqube中直接獲取掃描命令,進入項目

Token: 8dcba09f6faf72b81258e58ead4d1d2ca31628d0

sonar-scanner.bat -D"sonar.projectKey=test" -D"sonar.sources=." -D"sonar.host.url=http://192.168.2.122:9000/code_scan" -D"sonar.login=8dcba09f6faf72b81258e58ead4d1d2ca31628d0"

七、進行掃描

在sonar-project.properties文件所在目錄,進入cmd

執行:sonar-scanner.bat -D"sonar.projectKey=test" -D"sonar.sources=." -D"sonar.host.url=http://192.168.2.122:9000/code_scan" -D"sonar.login=8dcba09f6faf72b81258e58ead4d1d2ca31628d0"

上面的參數應該是可以修改的,這里是掃描python代碼,所以可以用這個命令執行

執行成功,可以訪問http://192.168.2.122:9000/code_scan/dashboard?id=test,查看結果

遇到問題

直接在項目目錄執行sonar-scanner,報錯

直接在項目目錄執行sonar-scanner,沒有權限

這樣執行:sonar-scanner.bat -D"sonar.projectKey=test" -D"sonar.sources=." -D"sonar.host.url=http://192.168.2.122:9000/code_scan" -D"sonar.login=8dcba09f6faf72b81258e58ead4d1d2ca31628d0"

項目包含java代碼

不能這樣執行:sonar-scanner.bat -D"sonar.projectKey=test" -D"sonar.sources=." -D"sonar.host.url=http://192.168.2.122:9000/code_scan" -D"sonar.login=8dcba09f6faf72b81258e58ead4d1d2ca31628d0"

需要使用其他命令

密碼錯誤

提示如下


免責聲明!

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



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