spotbugs / spotbugs-gradle-plugin

https://plugins.gradle.org/plugin/com.github.spotbugs
Apache License 2.0
178 stars 68 forks source link

Reports not created for cached task #1077

Closed vladimirfx closed 8 months ago

vladimirfx commented 9 months ago

Seems like 6.x regression - 5.x works as expected.

build.gradle.kts fragment:

spotbugs {
    excludeFilter = file("code-quality/spotbugs-filter.xml")
}

tasks.withType<SpotBugsTask> {
    reports {
        create("xml") { required = true }
        create("html") { required = true }
        create("sarif") { required = true }
    }
}

gradle.properties:

org.gradle.caching=true
org.gradle.jvmargs=-Xmx2g

Reproduction:

./gradlew spotbugsMain
# build/reports/spotbugs is populated
./gradlew clean
./gradlew spotbugsMain
# build/reports/spotbugs is NOT populated

./gradlew clean
./gradlew spotbugsMain --no-build-cache
# build/reports/spotbugs is populated

Plugin: 6.0.2-6.0.4 Spotbugs: 4.8.2-4.8.3

PaulFridrick commented 8 months ago

Same issue here, as a workaround I declared the outputs explicitly. For example :

tasks.withType<SpotBugsTask> {
    reports {
        create("xml") {
            required = true
            outputs.file(outputLocation)
        }
        create("html") {
            required = true
            outputs.file(outputLocation)
        }
        create("sarif") {
            required = true
            outputs.file(outputLocation)
        }
    }
}
github-actions[bot] commented 8 months ago

:tada: This issue has been resolved in version 6.0.6 :tada:

The release is available on:

Your semantic-release bot :package::rocket: