溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么在spring boot中利用sonarqube檢查技術(shù)債務(wù)

發(fā)布時(shí)間:2021-03-25 17:13:35 來(lái)源:億速云 閱讀:461 作者:Leah 欄目:編程語(yǔ)言

今天就跟大家聊聊有關(guān)怎么在spring boot中利用sonarqube檢查技術(shù)債務(wù),可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

Sonarqube

Sonarqube可以使用docker版本快速搭建,可以參看一下Easypack整理的鏡像,具體使用可以參看如下鏈接,這里不再贅述:

  • https://hub.docker.com/r/liumiaocn/sonarqube/

環(huán)境假定

本文使用到的sonarqube為本機(jī)32003可以訪問(wèn)到的服務(wù)。

掃描方式

可以使用sonar-scanner或者mvn sonar:sonar的方式對(duì)代碼進(jìn)行掃描,因?yàn)檫@里不是sonarqube的展開(kāi),只是解釋如何與之進(jìn)行集合,這篇文章使用更為便利的方式即mvn sonar:sonar。

使用命令:mvn sonar:sonar -Dsonar.host.url=http://localhost:32003
如果使用缺省的9000端口,-D可以不必使用,雖然這里都可以指定,為了避免初入者進(jìn)坑太多,這里還是盡可能的一切從簡(jiǎn)。

結(jié)果確認(rèn)

怎么在spring boot中利用sonarqube檢查技術(shù)債務(wù)

掃描結(jié)果確認(rèn)

怎么在spring boot中利用sonarqube檢查技術(shù)債務(wù)

確認(rèn)之后發(fā)現(xiàn),有一個(gè)Bugs&Vulnerabilities。我們來(lái)確認(rèn)一下相關(guān)詳細(xì)信息:

怎么在spring boot中利用sonarqube檢查技術(shù)債務(wù)

然而,這是一個(gè)誤報(bào),詳細(xì)可參看:

  • https://stackoverflow.com/questions/37071032/sonarqube-close-this-configurableapplicationcontext-in-spring-boot-project

對(duì)應(yīng)措施

因?yàn)榇诵惺且粋€(gè)誤報(bào),所以直接在該行添加//NOSONAR即可除外。另外為了驗(yàn)證其效果,我們添加一行:String msg = “Unused Message variable”;

再執(zhí)行&結(jié)果確認(rèn)

使用命令:mvn sonar:sonar -Dsonar.host.url=http://localhost:32003

可以看到,Bugs已經(jīng)沒(méi)有了,但是因?yàn)樵黾拥囊恍?,出現(xiàn)了兩個(gè)Code Smells的問(wèn)題。

怎么在spring boot中利用sonarqube檢查技術(shù)債務(wù)

具體確認(rèn)詳細(xì)信息:

怎么在spring boot中利用sonarqube檢查技術(shù)債務(wù)

因?yàn)镾onar認(rèn)為此行代碼沒(méi)有被使用到,所以是無(wú)用的語(yǔ)句應(yīng)該刪除。當(dāng)然這里的分析,即使沒(méi)有使用springboot的框架,只要是通過(guò)maven進(jìn)行整合的方式都是可以的。

代碼覆蓋率

但是需要注意到,這里沒(méi)有代碼覆蓋率,在下篇文章中將介紹如何在Spring boot的項(xiàng)目中通過(guò)Jacoco與之結(jié)合來(lái)引入代碼覆蓋率的確認(rèn)。

看完上述內(nèi)容,你們對(duì)怎么在spring boot中利用sonarqube檢查技術(shù)債務(wù)有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI