代碼檢查工具 Sonar 安裝&使用


     本文主要說明Sonar的安裝方式並附上依賴安裝包,本文目標只實現本地搭建測試的Sonar環境,以及本地的測試項目的非定制化掃描

     本機測試環境:Win10-X64,.vs2017

     依賴包:

     1.SDK   Java的東東

     2.sonarqube 靜態代碼檢查工具,B/S

     3.sonar-scanner-msbuild 真正的代碼掃面工具

     Soanr的代碼檢測的實現機制,就是通過客戶端的工具對代碼進行掃描,然后發送到 sonarqube,然后進行結果報告查看

     開始安裝:

  1.首先安裝SDK,安裝完成之后,配置相應的path環境變量,打開cmd輸入java,如下圖代表安裝成功:

       

   2.安裝Sonar

        下載Sonar ,下載地址 :https://www.sonarqube.org/downloads/    

        

        解壓下載包之后,執行 bin\windows-x86-64\StartSonar.bat

 

        

       如上圖,代表啟動成功,瀏覽器輸入:http://localhost:9000/ 即可訪問,已經默認內置了管理員賬號:admin / admin

 

        

     

     3.配置中文包

 

     如何打開配置中文包呢?

     

     

安裝之后需要重啟才能生效

 

如何強制停止sonar服務呢? 打開任務管理器,關閉 Java進程

     4.安裝包 sonar-scanner-msbuilld

        canner包就是真正進行代碼掃面的工具包

        https://github.com/SonarSource-VisualStudio/sonar-scanner-msbuild/releases/download/2.2/sonar-scanner-msbuild-2.2.0.24.zip

        下載后解壓至任意目錄即可,這里直接放到了c:\sonar 

     開始使用     

     1.新建項目

      填寫項目的關鍵信息即可,選擇項目開發語言

 

     2.掃描項目三部曲

        這里的三步曲就是sonar新建項目中的最后步驟的掃描教程,分為三步        

        1.配置環境變量,也就是下載的Sonar-Canner-Msbuild 中 SonarScanner.MSBuild.exe的位置

        2.進行項目解決方案所在的目錄,也就是 sln 文件所在目錄,打開cmd命令  執行如下命令,下面的命令是根據創建項目時生成的需要復制出來

            a.SonarScanner.MSBuild.exe begin /k:"Mytest" /d:sonar.host.url="http://localhost:9000" /d:sonar.login="d8fb95b33c46b1a755e9f93ca0ee62e7bb36591b"

            b.MsBuild.exe /t:Rebuild

            c.SonarScanner.MSBuild.exe end /d:sonar.login="d8fb95b33c46b1a755e9f93ca0ee62e7bb36591b"

            執行效果如下:

            如果MsBuild.exe /t:Rebuild 報錯,需要解決項目中的問題,這是編譯報錯,下圖為編譯成功,且報告已經上傳到SonarQube ,可以到 http://localhost:9000 查看具體報告

  

     3.查看項目掃描報告

        查看報告

 

     這里提供一個批處理,配合上述的放入c:\sonar,使用如下命令即可一部完成代碼分析並上報, 新建sonar.bat文件,copy如下命令,將soanr.bat放入項目sln目錄中,雙擊運行即可

echo off

c:\sonar\SonarScanner.MSBuild.exe begin /k:"項目名稱需要替換" /d:sonar.host.url="http://localhost:9000" /d:sonar.login="項目Key,創建項目時生成,需要復制"

::編譯代碼 set "msbuildPath=" set "msbuildPath14=%ProgramFiles(x86)%\MSBuild\14.0\Bin\MSBuild.exe" set "msbuildPath15=%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\msbuild.exe" if exist "%msbuildPath14%" set "msbuildPath=%msbuildPath14%" if exist "%msbuildPath15%" set "msbuildPath=%msbuildPath15%" if "%msbuildPath%" == "" goto nomsbuild "%msbuildPath%" /t:Rebuild c:\sonar\SonarScanner.MSBuild.exe end /d:sonar.login="d8fb95b33c46b1a755e9f93ca0ee62e7bb36591b" echo 掃描完成 pause :nomsbuild echo 沒有找到MSBUILD pause :exit

 


免責聲明!

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



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