Skip to content

Instantly share code, notes, and snippets.

@bluepapa32
Created June 14, 2011 15:06
Show Gist options
  • Save bluepapa32/1025078 to your computer and use it in GitHub Desktop.
Save bluepapa32/1025078 to your computer and use it in GitHub Desktop.
Gradle で FindBugs してみる
configurations {
findbugs
}
dependencies {
findbugs "com.google.code.findbugs:findbugs-ant:1.3.9"
}
findbugsOutputDirName = "findbugs"
findbugsReportDir = new File(reportsDir, findbugsOutputDirName)
findbugsOutputType = 'xml'
findbugsJvmargs = '-Xmx512M'
sourceSets.each { sourceSet ->
def findbugsTask = task(sourceSet.getTaskName('findbugs', null)) {
def outputFile = new File(findbugsReportDir, "${sourceSet.name}.${findbugsOutputType}")
dependsOn sourceSet.classesTaskName
inputs.dir sourceSet.classesDir
outputs.file outputFile
doLast {
ant {
taskdef(resource: 'edu/umd/cs/findbugs/anttask/tasks.properties',
classpath: configurations.findbugs.asPath)
mkdir(dir: findbugsReportDir)
findbugs(classpath: configurations.findbugs.asPath,
pluginlist: '',
output: findbugsOutputType,
outputFile: outputFile,
failOnError: true,
jvmargs: findbugsJvmargs) {
auxClassPath(path: configurations.compile.asPath)
sourceSet.allJava.srcDirs.each { sourcepath(path: it) }
"class"(location: sourceSet.classesDir)
}
}
}
}
tasks['check'].dependsOn findbugsTask
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment