本篇文章給大家分享的是有關(guān)怎么在Gradle中使用Sonarqube進行代碼審查,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
為新巴爾虎左等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及新巴爾虎左網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站設(shè)計、網(wǎng)站制作、新巴爾虎左網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
Sonarqube
Sonarqube可以使用docker版本快速搭建
環(huán)境假定
本文使用到的sonarqube為本機32003可以訪問到的服務(wù)。
gradle的sonarqube插件
gradle中的sonarqube的插件是org.sonarqube,用來在gradle中調(diào)用sonarqube進行代碼質(zhì)量分析。詳細介紹請參看:
https://plugins.gradle.org/plugin/org.sonarqube
當前插件最新版本:2.6.2(更新于2018/2/13)
使用方式
指定plugin
在build.gradle中添加如下插件版本信息
plugins { id "org.sonarqube" version "2.6.2" }
添加apply plugin信息
apply plugin: "org.sonarqube"
sonarqube設(shè)定信息
最簡單的需求的情況下,非多工程項目做以上配置即可,接下來就是傳遞給gradle所需要的sonarqube的詳細信息,而這些可以通過property的方式傳入,詳細的使用方式在前面的基礎(chǔ)中都已介紹,此處不再贅述,主要設(shè)定的內(nèi)容為:
URL:systemProp.sonar.host.url=http://localhost:32003
用戶名:systemProp.sonar.login=admin
密碼:systemProp.sonar.password=admin
設(shè)定方式可以使用如下方式:
sonarqube { properties { property "sonar.host.url", "http://localhost:32003" property "sonar.login", "admin" property "sonar.password", "admin" } }
build.gradle詳細信息
liumiaocn:springboot liumiao$ cat build.gradle buildscript { ext { springBootVersion = '2.1.1.RELEASE' } repositories { mavenCentral() } dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") } } plugins { id "org.sonarqube" version "2.6.2" } sonarqube { properties { property "sonar.host.url", "http://localhost:32003" property "sonar.login", "admin" property "sonar.password", "admin" } } apply plugin: 'java' apply plugin: 'jacoco' apply plugin: 'org.sonarqube' apply plugin: 'org.springframework.boot' apply plugin: 'io.spring.dependency-management' group = 'com.liumiaocn' version = '0.0.1-SNAPSHOT' sourceCompatibility = 1.8 repositories { mavenCentral() } dependencies { implementation('org.springframework.boot:spring-boot-starter-web') testImplementation('org.springframework.boot:spring-boot-starter-test') } jacocoTestReport { reports { xml.enabled false html.enabled true } } check.dependsOn jacocoTestReport liumiaocn:springboot liumiao$
掃描方式
可以使用gradle sonarqube即可進行掃描
執(zhí)行日志
liumiaocn:springboot liumiao$ gradle sonarqube
> Task :sonarqube
SCM provider autodetection failed. No SCM provider claims to support this project. Please use sonar.scm.provider to define SCM of your project.
Class not found: javax.annotation.Nonnull
Class not found: javax.annotation.meta.When
Class not found: javax.annotation.meta.TypeQualifierNickname
Class not found: org.junit.jupiter.api.extension.ExtendWith
BUILD SUCCESSFUL in 6s
5 actionable tasks: 1 executed, 4 up-to-date
liumiaocn:springboot liumiao$
結(jié)果確認
掃描結(jié)果確認
可以看到質(zhì)量掃描結(jié)果和覆蓋率的信息都進行了顯示
脆弱性信息詳細
查出了一個缺陷,實際是一個誤報,詳細可參看maven使用方式的詳細介紹。
https://www.jb51.net/article/153522.htm
代碼覆蓋率
代碼覆蓋率的詳細信息也可以在sonarqube上進行直接確認
以上就是怎么在Gradle中使用Sonarqube進行代碼審查,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降摹OM隳芡ㄟ^這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
名稱欄目:怎么在Gradle中使用Sonarqube進行代碼審查
URL地址:http://chinadenli.net/article46/pijceg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、網(wǎng)站策劃、微信小程序、Google、標簽優(yōu)化、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)