Quality checks for gradle-based applications (pure Java and Android).
Includes:
-
Java lint (checkstyle, pmd, findbugs) configs and tasks
-
Android lint config
-
error-prone compiler setup
Bonus:
-
prints all errors in human-readable and at the same time machine-parseable format of
<filename>:<line>: <check name>: <error message>
, allowing to pipe the output into most editors and IDEs error windows -
resolveDependencies
task that will pre-download all dependencies for all configurations (useful for caching in CI)
Meta tasks:
-
Android:
checkQuality<variant name>
(e.g.checkQualityDebug
) -
Java:
checkQuality<source set name>
(e.g.checkQualityMain
)
Based on:
-
various external configurations and style guides
-
some existing plugins (e.g. findbugs-android)
-
FirebaseUI-Android project quality checks configuration
-
trial and error