<ul id="qxxfc"><fieldset id="qxxfc"><tr id="qxxfc"></tr></fieldset></ul>


      系列目錄 <https://www.cnblogs.com/tylerzhou/p/11204826.html>

      Sonarqube下載與安裝

      Sonarqube下載地址是:https://www.sonarqube.org/downloads/
      下載版本有兩個,一個是長期支持版,另一個是最新版,此處安裝的是最新版,目前版本是7.3,下載的時候點擊醒目的藍(lán)色按鈕即可(此時下載的是社區(qū)版),下面有三個無底色按鈕下載鏈接,分別對應(yīng)的是開發(fā)者版,企業(yè)版和數(shù)據(jù)中心版,這些版本都不是免費版,需要獲取Licence
      key方可使用.目前起步階段,使用社區(qū)版就Ok了.

      注意 Sonarqube是基于java語言開發(fā)的,因此運行之前必須先安裝Jre

      Sonarqube支持Windows,mac和linux,但是安裝包并不區(qū)分平臺,也就是這三個平臺下載包是一樣的,只是啟動方式不同.


      下載完成全將下載的壓縮包解壓,進(jìn)入bin目錄,可以看到這個目錄下有數(shù)個文件夾,從文件夾的名稱很容易看出它們對應(yīng)的是windows,mac,linux平臺下的啟動目錄,由于我們是在windows平臺下運行的,因此進(jìn)入windows-x86-64目錄(當(dāng)然,如果你的電腦是32位系統(tǒng),則進(jìn)入windows-x86-32目錄)此目錄下面有很多腳本文件,我們雙擊
      StartSonar.bat這個批處理文件來運行windows下的sonarqube,啟動需要數(shù)十秒時間,請耐心等等.當(dāng)看到控制臺最后一句是SonarQube
      is up說明sonarqube已經(jīng)成功啟動.此時在瀏覽器地址欄輸入localhost:9000就可以進(jìn)入Sonarqube web管理頁面.



      這個頁面是一個關(guān)于Sonarqube的介紹頁面,從這里可以很清析地看到Sonarqube支持的語言,點擊Read Documentation
      按鈕可以進(jìn)入Sonarqube的幫助文檔頁面.

      Sonarqube基本配置


      上一節(jié)我們已經(jīng)成功啟動Sonarqube,然而僅僅把Sonarqube啟動起來并沒有什么作用,我們還需要進(jìn)行數(shù)據(jù)庫配置和掃描器(Sonarqube對特定語言的掃描工具稱為掃描器)配置才能把數(shù)據(jù)接入Sonarqube管理平臺.

      數(shù)據(jù)庫配置

      Sonarqube支持內(nèi)嵌數(shù)據(jù)庫,mysql,oracle 11g/12c,sql server 2014/2016,postgresql
      9.3+,由于oracle需要提供單獨的驅(qū)動比較麻煩,這里就以mysql為例講解.

      我們進(jìn)入Sonarqube目錄下的conf目錄,下面有一個sonar.properties文件,我們用記錄本打開它,我們進(jìn)入mysql欄把
      sonar.jdbc.url注釋取消掉,并加上以下代碼
      sonar.jdbc.username=root sonar.jdbc.password= sonar.sorceEncoding=UTF-8
      sonar.login=root sonar.password=
      Sonarqube默認(rèn)的數(shù)據(jù)庫名為sonar,需要我們手動創(chuàng)建,我們在自己常用的mysql管理工具里新建即可.

      以上是關(guān)于sonarqube mysql連接字符串的配置.用戶名和密碼讀者根據(jù)實際情況填寫


      以上筆者使用的是Xampp帶的mysql的默認(rèn)配置,用戶名為root,密碼為空,注意這里的password不能寫為"",而是什么都不寫留空,當(dāng)然如果有密碼就填寫實際密碼.

      Sonarqube 7.3僅支持mysql 5.6及以上8.0以下版本,也就是說不支持8.0版本,需要特別注意.

      Sonarqube也支持內(nèi)嵌數(shù)據(jù)庫,然而內(nèi)嵌數(shù)據(jù)庫不便于管理和遷移,強(qiáng)烈不建議在生產(chǎn)環(huán)境使用內(nèi)嵌數(shù)據(jù)庫.

      我們重新啟動Sonarqube,然后進(jìn)入web管理界面,此時我們打開mysql管理工具,可以看到sonarqube在sonarqube庫下創(chuàng)建了很多表.

      安裝配置Msbuild Scanner

      上一節(jié)我們說過,Sonarqube需要使用Scanner來掃描代碼數(shù)據(jù)以供Sonarqube管理平臺使用,這里我們下載 msbuild
      scanner掃描工具對c#代碼進(jìn)行掃描.

      我們把Sonarqube web管理界面往下拉到最底,會看到一拍圖標(biāo)



      我們點擊第一個圖標(biāo),也就是Visual Studio圖標(biāo),會進(jìn)入一個頁面


      圖示部分為下載鏈接,我們選擇.net framework 4.6+

      注意,這里下載鏈接的名稱雖然是for .net framework 4.6+,實際上仍然支持.net 4.0及以上版本,并不是只支持.net 4.6以上版本.

      下載完成后,我們把壓縮包解壓到一個目錄,并把目錄地址添加到系統(tǒng)環(huán)境變量里.

      同樣,為了方便使用,我們也需要把msbuild.exe添加到環(huán)境變量中,如果你的系統(tǒng)中安裝的visual Studio開發(fā)工具,則Visual
      studio中會自動包含一個msbuild.exe我們找到它的路徑添加到系統(tǒng)環(huán)境變量path中.

      配置SonarQube.Analysis.xml文件

      由于Scanner要通過rest api方式向服務(wù)器提交數(shù)據(jù),這里需要對Sonarqube
      web服務(wù)器地址和用戶名進(jìn)行配置才能正常提交數(shù)據(jù),我們打開剛解壓的目錄,找到SonarQube.Analysis.xml文件,添加以下三行配置即可
      <Property Name="sonar.host.url">http://localhost:9000</Property> <Property
      Name="sonar.login">admin</Property> <Property
      Name="sonar.password">admin</Property>

      以上配置很容易理解,url為Sonarqube服務(wù)器地址,下面為登陸名和密碼(Sonarqube默認(rèn)帶一個管理員賬號,用戶名為admin密碼也是admin,后面我們會講在生產(chǎn)環(huán)境中如何更改admin密碼)

      再次回到剛才的下載頁面,定位到usage欄,可以看到有一個簡短的示例代碼如下
      SonarScanner.MSBuild.exe begin /k:"project-key" MSBuild.exe /t:Rebuild
      SonarScanner.MSBuild.exe end
      我們依照這段代碼的結(jié)構(gòu),對本地的一個項目進(jìn)行編譯(可以是任意c#項目),進(jìn)入項目sln或者csproj所在的文件夾下依次執(zhí)行以下代碼
      SonarScanner.MSBuild.exe begin /k:"mygetdata" /v:"1.0" MSBuild.exe /t:Rebuild
      SonarScanner.MSBuild.exe end

      第二段是執(zhí)行msbuild,第三段是一個結(jié)束標(biāo)志,沒有什么需要詳細(xì)說明的,關(guān)于msbuild構(gòu)建的詳細(xì)信息可以查看微軟官網(wǎng),也可以參照本教程其它章節(jié).這里簡要介紹下第一段的/k和/v參數(shù),/k為key的縮寫,Sonarqube每一個項目都要有一個惟一key,key的規(guī)則可以自己定,但是需要方便管理,/v為version,如果兩個構(gòu)建的key相同,verison不同,Sonarqube會生成一個對比以便直觀看到兩次構(gòu)建的差異,這樣方便管理員查看問題的解決情況.

      執(zhí)行完以上命令后,我們再進(jìn)入Sonarqube首頁,這時候我們點擊Login按鈕登陸,只有登陸以后才可以看到與項目相關(guān)的內(nèi)容
      ,點擊例如后用戶名為admin,密碼也是admin(前面說過Sonarqube默認(rèn)會帶一個用戶名和密碼都是admin的賬戶,后面我們會講如何更改密碼以及如何為不同的開發(fā)者分配賬戶)

      登陸以后,就會看到一個如下圖所示的界面



      從圖中我們可以看到我們剛才創(chuàng)建的key 為mygetdata
      的構(gòu)建了,從圖中可以簡要的看到此項目的嚴(yán)重bug,一般bug,代碼不規(guī)范,代碼單元測試覆蓋率,代碼重復(fù)度,代碼最后一次分析時間等.

      我們點擊mygetdata這個標(biāo)題,便會進(jìn)去關(guān)于這個構(gòu)建任務(wù)的更為詳細(xì)信息



      可以看到信息更為詳細(xì),切換上面的導(dǎo)航欄可以看到關(guān)于某一個維度的更為詳細(xì)的信息.

      圖標(biāo)中的數(shù)字大都是可以點擊的鏈接,比如頁面中顯示bugs為10我們點擊10這個數(shù)字可以進(jìn)入這10個bug的代碼詳情


      友情鏈接
      ioDraw流程圖
      API參考文檔
      OK工具箱
      云服務(wù)器優(yōu)惠
      阿里云優(yōu)惠券
      騰訊云優(yōu)惠券
      京東云優(yōu)惠券
      站點信息
      問題反饋
      郵箱:[email protected]
      QQ群:637538335
      關(guān)注微信

        <ul id="qxxfc"><fieldset id="qxxfc"><tr id="qxxfc"></tr></fieldset></ul>
          涩涩视频在线免费看 | 欧洲美女操逼 | 国产伦精品一区二区三区视频1 | 国产伦理精品 | 农村嫩苞一区二区三区… | 大香蕉免费在线观看 | 玖玖热这里只有精品 | 日日夜夜拍拍 | 成人黄色免费在线 | 潘金莲毛片 |