最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

spring boot使用sonarqube來檢查技術(shù)債務(wù)

 更新時間:2018年12月26日 14:46:52   作者:liumiaocn  
今天小編就為大家分享一篇關(guān)于spring boot使用sonarqube來檢查技術(shù)債務(wù),小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

作為代碼質(zhì)量檢查的流行工具,比如Sonarqube能夠檢查代碼的“七宗罪”,跟代碼結(jié)合起來能夠更好地提高代碼的質(zhì)量,讓我們來看一下,剛剛寫的Springboot2的HelloWorld的代碼有什么“罪”。

Sonarqube

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

環(huán)境假定

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

掃描方式

可以使用sonar-scanner或者mvn sonar:sonar的方式對代碼進行掃描,因為這里不是sonarqube的展開,只是解釋如何與之進行集合,這篇文章使用更為便利的方式即mvn sonar:sonar。

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

結(jié)果確認

掃描結(jié)果確認

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

然而,這是一個誤報,詳細可參看:

對應(yīng)措施

因為此行是一個誤報,所以直接在該行添加//NOSONAR即可除外。另外為了驗證其效果,我們添加一行:String msg = “Unused Message variable”;

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

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

可以看到,Bugs已經(jīng)沒有了,但是因為增加的一行,出現(xiàn)了兩個Code Smells的問題。

具體確認詳細信息:

因為Sonar認為此行代碼沒有被使用到,所以是無用的語句應(yīng)該刪除。當然這里的分析,即使沒有使用springboot的框架,只要是通過maven進行整合的方式都是可以的。

代碼覆蓋率

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

小結(jié)

使用SonarQube可以很好的檢查出代碼的問題,但是在實際的項目中需要進行裁剪和定制,掃出來的不一定有問題,沒有掃出來也不一定萬事大吉,但是一定程度的代碼規(guī)范和質(zhì)量提高還是很有用處,實際在使用的時候應(yīng)該根據(jù)具體情況進行實施。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接

相關(guān)文章

  • Maven dependency中的scope案例講解

    Maven dependency中的scope案例講解

    Maven的一個哲學是慣例優(yōu)于配置(Convention Over Configuration), Maven默認的依賴配置項中,scope的默認值是compile,本文給大家介紹Maven dependency中的scope案例講解,感興趣的朋友跟隨小編一起看看吧
    2024-02-02
  • Java數(shù)組擴容實現(xiàn)方法解析

    Java數(shù)組擴容實現(xiàn)方法解析

    這篇文章主要介紹了Java數(shù)組擴容實現(xiàn)方法解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11
  • 解決mybatis generator MySQL自增ID出現(xiàn)重復(fù)問題MySQLIntegrityConstraintViolationException

    解決mybatis generator MySQL自增ID出現(xiàn)重復(fù)問題MySQLIntegrityC

    在MySQL中使用MyBatis時,可能會遇到由于主鍵重復(fù)導致的插入失敗問題,此問題通常發(fā)生在連續(xù)插入多條數(shù)據(jù)時,如果selectKey的order配置錯誤,如使用BEFORE而不是AFTER,將會導致獲取的ID未更新,引起主鍵重復(fù)錯誤,正確的配置應(yīng)使用AFTER
    2024-10-10
  • spring AOP的After增強實現(xiàn)方法實例分析

    spring AOP的After增強實現(xiàn)方法實例分析

    這篇文章主要介紹了spring AOP的After增強實現(xiàn)方法,結(jié)合實例形式分析了spring面向切面AOP的After增強實現(xiàn)步驟與相關(guān)操作技巧,需要的朋友可以參考下
    2020-01-01
  • Spring事務(wù)管理配置文件問題排查

    Spring事務(wù)管理配置文件問題排查

    這篇文章主要介紹了Spring事務(wù)管理配置文件問題排查,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-05-05
  • SpringBoot 版本兼容性問題解決

    SpringBoot 版本兼容性問題解決

    本文詳細介紹了SpringBoot版本兼容性問題的常見場景,包括與SpringFramework、依賴庫、JDK、SpringCloud及插件及工具的兼容性問題,幫助開發(fā)者避免兼容性問題,確保項目的穩(wěn)定性和可維護性
    2024-10-10
  • Log4j定時打印日志及添加模塊名配置的Java代碼實例

    Log4j定時打印日志及添加模塊名配置的Java代碼實例

    這篇文章主要介紹了Log4j定時打印日志及添加模塊名配置的Java代碼實例,Log4j是Apache的一個開源Java日志項目,需要的朋友可以參考下
    2016-01-01
  • 淺談Java(SpringBoot)基于zookeeper的分布式鎖實現(xiàn)

    淺談Java(SpringBoot)基于zookeeper的分布式鎖實現(xiàn)

    這篇文章主要介紹了Java(SpringBoot)基于zookeeper的分布式鎖實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-03-03
  • @Async導致controller?404及失效原因解決分析

    @Async導致controller?404及失效原因解決分析

    這篇文章主要為大家介紹了@Async導致controller?404失效問題解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07
  • Java 并發(fā)編程:volatile的使用及其原理解析

    Java 并發(fā)編程:volatile的使用及其原理解析

    下面小編就為大家?guī)硪黄狫ava 并發(fā)編程:volatile的使用及其原理解析。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-05-05

最新評論

沁阳市| 桂平市| 云安县| 靖西县| 宁安市| 临潭县| 司法| 金山区| 乌兰浩特市| 宁阳县| 海淀区| 咸阳市| 桃园市| 康马县| 西藏| 双柏县| 嘉兴市| 临沭县| 荥阳市| 宝山区| 南康市| 晋城| 红桥区| 五莲县| 米易县| 旬阳县| 布拖县| 奉节县| 晋中市| 丽江市| 许昌县| 元谋县| 滕州市| 安龙县| 西昌市| 宁武县| 介休市| 安丘市| 策勒县| 金沙县| 阿拉善左旗|