Gradle task doesn't declare all inputs
Java class file shrinker, optimizer, obfuscator, and preverifier
Brought to you by:
guardsquare
Reproduction:
Expected behaviour: it obfuscates the jar again
Actual behaviour: it thinks it's up to date and skips executing
The cause presumably is that many public getters in ProGuardTask are not declared as @Input, which is how Gradle figures out whether something is an input. Anything which could change the outcome of the task should be annotated as such to get correct behaviour.
Some methods are also missing output declarations. Example, these two should both be @OutputFile: