mac 安裝sonarQube+sonar-scanner


一、為什么安裝?

  SonarQube是管理代碼質量的一個開放平台,可以快速的定位代碼中潛在的或者明顯的錯誤。

  前端妹子一枚,公司要求自己檢查代碼質量。我用mac安裝sonarQube的時候,查詢相關文檔都描述的不夠詳細,踩過了不少坑,所以把安裝過程及踩坑點詳細的記錄了下來。

  想事先了解sonarQube的可以去看看官網:sonarQube官網

  下面是安裝成功后,測試一個項目代碼質量的截圖,可以看到有相關的bug和重復率等測試結果。

  

二、mac如何安裝?

1. 需要安裝數據庫,我用的是mysql。

注意:sonarQube需要的mysql版本是5.7以后並且是8.0之前的版本,現在官網可用版本為5.7.26,不能下載最新版8.0.16!!!如果電腦已經安裝了最新版,請重新安裝舊版5.7.26。

  • 該版本安裝時有一個初始密碼,需要先自己改密碼,再啟動。如果不更改密碼,會啟動失敗!!!

2 sonarQube安裝與配置

  • 官網下載sonarQube,下載鏈接
    • 如果mac系統下載不了sonarQube, 請移步百度網盤, 鏈接: https://pan.baidu.com/s/14W_ej2FrPxiQI4NjtS3UGQ 提取碼: cx3t 
  • 解壓壓縮包,可雙擊解壓,或在終端進入sonarQube所在的文件夾並輸入命令 unzip sonarqube-7.7.zip 解壓
  • 對SonarQube的配置文件進行更改.位置是:  /sonarqube-7.7/conf/sonar.properties,在終端輸入命令 vi + “sonar.properties的路徑”, 以我的為例:
vi /usr/sonar/sonarqube-7.7/conf/sonar.properties
  • 進入sonar.properties文件后,更改一些配置, 配置數據庫的用戶名、密碼、端口號。
    • 注意:我使用的數據庫是mysql, 用戶是root用戶,密碼是root用戶對應的密碼。如果使用的是其它數據庫,則配置與下面的不同
# #代表注釋,原配置是把uername、password、url、host、port注釋了,請把這幾個的注釋去掉,即把前面的#去掉。
sonar.jdbc.username=root sonar.jdbc.password=123213
# url是你自己的url,默認就有配置的。
sonar.jdbc.url=? #使用0.0.0.0是保證任何地址都可以使用 sonar.web.host=0.0.0.0
#默認端口為9000,如果想避免和NodeJS的端口沖突。可以更改,我這里未更改
sonar.web.port=9000

    • 如果不懂相關的操作命令,不會使用vi編輯的小伙伴請移步vim編輯器官網,或參考相關教程
    • 介紹一下這里需要用到的命令:插入命令: 搜索命令: 保存並退出:先按Esc,再輸入:wq 不保存只退出: 先按Esc,再輸入:q  強制退出:先按Esc,再輸入:q!
  • 測試sonarQube是否安裝成功
    • 進入到目錄sonarqube-7.7/bin/macosx-universal-64/sonar下,輸入如下命令。sonar如成功啟動, 終端會呈現Starting SonarQube... Started SonarQube...
sh sonar.sh start
    • 再進入到目錄sonarqube-7.7/logs下,輸入命令:
tail -f  sonar.log
    • SonarQube在安裝完后運行: 127.0.0.1:9000,成功運行則sonarQube安裝成功。
    • 若出現如下提示: SonarQube is under maintenance...先運行http://127.0.0.1:9000/setup

  

3. 安裝與配置sonar-scanner

  • 官網下載sonar-scanner,下載鏈接。注意:mac系統請下載對應的mac版本的sonar-scanner,用linux版本的會安裝失敗!!!
    • 如果mac系統下載不了sonar-scanner,請移步百度網盤, 鏈接: https://pan.baidu.com/s/14W_ej2FrPxiQI4NjtS3UGQ 提取碼: cx3t 
  • 解壓sonar-scanner,可雙擊解壓,或終端進入到sonar-scanner所在的文件夾輸入 unzip sonar-scanner-cli-3.3.0.1492-macosx.zip解壓
  • 配置環境變量
    • 首先進入bash.profile文件,輸入命令 vi ~/.bash_profile,進行編輯文本模式。
    • 配置sonar_home、sonar_scanner_home、path(路徑換成你的sonarqube與sonar-scanner文件所在的絕對路徑),以我的為例:    
export SONAR_HOME=/usr/sonar/sonarqube-7.7
export SONAR_SCANNER_HOME=/usr/sonar/sonar-scanner-cli-3.3.0.1492-macosx
export PATH=$PATH:$SONAR_SCANNER_HOME/bin
    • 退出文本編輯模式(按Esc,:wq),執行命令: source ~/.bash_profile,使配置立即生效
  • 測試sonar-scanner是否安裝成功,輸入命令: sonar-scanner -v,成功安裝如下圖:

 

3.掃描項目

  終端進入到待測試的項目根目錄,新建sonar-project.properties文件: 輸入命令vi sonar-project.properties,進行文本編輯模式。

  增加如下配置,其中:sonar.projectName是項目名字,sonar.sources=是源文件所在的目錄

    # must be unique in a given SonarQube instance
    sonar.projectKey=my:project
    # this is the name displayed in the SonarQube UI
    sonar.projectName=i2work-operation
    sonar.projectVersion=1.0
    # Path is relative to the sonar-project.properties file. Replace "\" by "/" on Windows.
    # Since SonarQube 4.2, this property is optional if sonar.modules is set. 
    # If not set, SonarQube starts looking for source code from the directory containing 
    # the sonar-project.properties file.
    sonar.sources=src
    # Encoding of the source code. Default is default system encoding
    #sonar.sourceEncoding=UTF-8
    #path to your project build output path
    sonar.java.binaries=target/classes

4. 打開終端,進入待測試項目根目錄,執行命令:sonar-scaneer, 成功如下圖:

 

 


免責聲明!

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



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