Ich versuche, Findbugs-Plugin in meiner Build.Gradle-Datei verwenden, um die Entwickler persönliche Build fehlschlagen, aber es funktioniert nicht. Obwohl das Plugin die Berichte erstellt, wird der Build nicht fehlschlagen. Ich habe versucht, mit der ignoreFailures Eigenschaft zu "spielen", aber das ging auch nicht gut.Findbugs Gradle Plug-in wird die Build nicht fehlschlagen
Ich habe diese Antwort verwendet How to write a customized gradle task to not to ignore Findbugs violations but fail after the analysis is completed, und es hat funktioniert, aber ich mag es nicht, die Berichte zu analysieren, und es fühlt sich an wie ein Hack.
Gibt es keinen einfachen Weg (wie 'ignoreFailures' sollte sein), den Gradle Build mit Hilfe von Findbugs zu scheitern? Gibt es dafür einen anderen geeigneten Rahmen?
Added die build.gradle Datei:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath "com.bmuschko:gradle-tomcat-plugin:2.1"
}
}
subprojects {
apply plugin:'java'
apply plugin:'eclipse'
apply plugin: "findbugs"
findbugs {
reportsDir = file("$project.buildDir/findbugsReports")
effort = "max"
reportLevel = "high"
}
build.dependsOn 'check'
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
repositories {
maven { url "http://repo.maven.apache.org/maven2" }
}
dependencies {
compile group: 'javax.validation', name: 'validation-api', version:'1.1.0.Final'
compile group: 'org.springframework.security', name: 'spring-security-web', version: "${VERSION_SPRING_SECURITY}"
compile group: 'org.springframework.security', name: 'spring-security-config', version: "${VERSION_SPRING_SECURITY}"
// Spring dependency injection container:
compile (group: 'org.springframework', name: 'spring-context', version:"${VERSION_SPRING}") {
exclude(module: 'commons-logging')
}
compile group: 'javax.inject', name: 'javax.inject', version:'1'
compile group: 'org.slf4j', name: 'slf4j-api', version:'1.7.10'
runtime group: 'org.slf4j', name: 'jcl-over-slf4j', version:'1.7.10'
runtime group: 'org.slf4j', name: 'slf4j-log4j12', version:'1.7.10'
runtime group: 'org.aspectj', name: 'aspectjrt', version:"${VERSION_ASPECTJ}"
runtime group: 'org.aspectj', name: 'aspectjweaver', version:"${VERSION_ASPECTJ}"
testCompile group: 'org.springframework', name: 'spring-test', version:"${VERSION_SPRING}"
testCompile group: 'junit', name: 'junit', version:'4.12'
compile group: 'commons-pool', name: 'commons-pool', version:'1.6'
compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version:'2.5.1'
compile group: 'com.fasterxml.jackson.module', name: 'jackson-module-mrbean', version:'2.5.1'
}
}
project(':server:application'){
dependencies {
compile(project(':server:services')) {
exclude(module: ':server:data-access')
}
compile group: 'org.springframework', name: 'spring-webmvc', version:"${VERSION_SPRING}"
compile project(':server:dto'), project(':server:utils'), project(':server:model')
}
}
Findbugs ist überhaupt nicht fehlgeschlagen. auch wenn ignoreFailures = false (obwohl es der Standardwert ist) – Rivi
Können Sie ein Beispiel angeben, das das Problem reproduziert? – Opal
Die build.gradle-Datei hinzugefügt – Rivi