一:findbugs
在 build.gradle 文件中添加 findbugs 插件:
plugins {
id 'findbugs'
}
findbugs{
ignoreFailures=true
findbugsTest.enabled=false
}
tasks.withType(FindBugs) {
reports {
xml.enabled = false
html.enabled = true
}
}
findbugs 可以生成 xml 和 html 两种格式的代码检测结果,其中只可以有一种 enabled 设置为 true。
二:pmd
在 build.gradle 文件中添加 pmd 插件:
plugins {
id 'pmd'
}
pmd {
ignoreFailures = true
pmdTest.enabled=false
}
tasks.withType(Pmd){
reports{
xml.enabled=true
html.enabled=true
}
}
pmd也可以生成xml和html两种格式的代码检测结果,两种检测文件可以同时生成,但检测效果不如findbugs。
三:sonarqube
在 build.gradle 文件中添加 sonarqube 插件:
buildscript {
repositories {
mavenCentral()
maven { url "https://plugins.gradle.org/m2/"}
}
dependencies {
classpath("org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.6-rc1")
}
}
plugins {
id "org.sonarqube" version "2.6-rc1"
}
sonarqube{
properties {
property "sonar.sourceEncoding", "UTF-8"
property 'sonar.host.url','http://localhost:9000/'
property "sonar.sources", "src/main/java"
property "sonar.login", "admin"
property "sonar.password", "admin"
}
}
sonarqube 插件使用时需要启动本机的 sonarqube 服务,properties 定义了他的浏览器访问地址等默认设置。
三种插件生成的task都在gradle-Tasks下的other里面:
task生成的文件都在build文件夹下,可在浏览器打开查看结果: