今天推薦三個(gè)插件,它們都是代碼質(zhì)量檢測(cè)的神器。可以掃描檢測(cè)出你項(xiàng)目中不符合規(guī)范的代碼,他們分別是 SonarLint、SonarQube、Alibaba代碼規(guī)約插件。
SonarLint是一個(gè)代碼質(zhì)量檢測(cè)插件,可以幫助我們檢測(cè)出代碼中的壞味道。

在需要檢測(cè)的單個(gè)文件或者單個(gè)項(xiàng)目上右鍵 -> Analyze -> Analyze with SonarLint或者選中文件或目錄,點(diǎn)擊菜單欄 Analyze -> Analyze with SonarLint

如果需要同步自定義的規(guī)則時(shí),可以綁定到 SonarQube



對(duì)于代碼中的警告我們不能視而不見(jiàn)
有了代碼質(zhì)量檢測(cè)工具以后,在一定程度上可以保證代碼的質(zhì)量,對(duì)于每一個(gè)問(wèn)題,SonarLint 都給出了示例,還有相應(yīng)的解決方案,教我們?cè)趺葱薷模瑯O大的方便了我們的開發(fā)。比如,對(duì)于日期類型盡量用 LocalDate、LocalTime、LocalDateTime,還有重復(fù)代碼、潛在的空指針異常、循環(huán)嵌套等等問(wèn)題。有了代碼規(guī)范與質(zhì)量檢測(cè)工具以后,很多東西就可以量化了,比如bug率、代碼重復(fù)率等,還可以自定義各種指標(biāo),方便管理人員查看。為此,我們需要一個(gè)平臺(tái)來(lái)記錄每次檢測(cè)分析的結(jié)果,這樣就可以進(jìn)行分析和統(tǒng)計(jì),并且可以直觀的看到這一切于是,SonarQube 閃亮登場(chǎng)!SonarQube 是一個(gè)開源的代碼質(zhì)量管理平臺(tái)



https://docs.sonarqube.org/latest/setup/get-started-2-minutes/下載下來(lái)這個(gè)工具,進(jìn)行解壓執(zhí)行:unzip sonarqube-7.7.zip
cd sonarqube-7.7
bin/[OS]/sonar.sh consol

啟動(dòng)成功后,訪問(wèn) http://localhost:9000 用管理員賬號(hào)(admin/admin)登錄
接下來(lái),為了把檢測(cè)的結(jié)果傳到服務(wù)器,我們需要配置一個(gè)Scanner,具體參考文檔:https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+Maven這里我在項(xiàng)目中添加 sonar-maven-plugin 插件<build>
<plugins>
<plugin>
<groupId>org.sonarsource.scanner.maven</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>3.6.0.1398</version>
</plugin>
</plugins>
</build>
命令行執(zhí)行:mvn clean compile sonar:sonar
再次刷新 http://localhost:9000/ 會(huì)看到跟剛才不一樣了


以上只是本地演示,在正式環(huán)境中這些數(shù)據(jù)當(dāng)然要保存到數(shù)據(jù)庫(kù)中,具體安裝就不演示了,下面是文檔:https://docs.sonarqube.org/latest/setup/install-server/阿里代碼規(guī)范,相信大家都不陌生。IDEA 中安裝這個(gè)插件即可,同時(shí)如果需要更多優(yōu)質(zhì) IDEA 插件推薦可以關(guān)注公眾號(hào)「Java后端」搜索「IDEA」就可以找到相關(guān)的插件推薦文章了。
安裝了此插件,就可以進(jìn)行掃描,檢測(cè)出你寫的 "壞"代碼。

鏈接:cnblogs.com/cjsblog/p/10735800.htmlhttps://www.sonarqube.org/https://www.sonarsource.com/plans-and-pricing/community/https://www.sonarlint.org/https://docs.sonarqube.org/latest/setup/overview/https://docs.sonarqube.org/latest/https://github.com/SonarSource/sonar-scanning-examples/tree/master/sonarqube-scanner-mavenhttps://github.com/SonarSource順便給大家推薦一個(gè)GitHub項(xiàng)目,這個(gè) GitHub 整理了上千本常用技術(shù)PDF,絕大部分核心的技術(shù)書籍都可以在這里找到,
GitHub地址:https://github.com/javadevbooks/books
Gitee地址:https://gitee.com/javadevbooks/books
電子書已經(jīng)更新好了,你們需要的可以自行下載了,記得點(diǎn)一個(gè)star,持續(xù)更新中..
