Another tool to analyze the Java source code is PMD. It finds unused variables, empty catch blocks, unnecessary object creation, and so on. We can configure our own rule sets and even define our own rules. To use PMD with Gradle, we have to apply the PMD plugin to our build. After we have added the plugin, we have the
pmdTest tasks already installed. These tasks will run PMD rules for the main and test source sets. If we have a custom source set, then the plugin adds a
pmd<SourceSet> task as well. These tasks are also dependency tasks of the
check task. So if we invoke the
check task, all the
pmd tasks are executed as well.
This plugin only defines a structure to work with PMD, but it doesn't contain the actual PMD library dependencies. Gradle will download the PMD dependencies the first time that we invoke the
pmd tasks. We have to define a repository that contains the PMD libraries, such as the Bintray JCenter repository or a corporate intranet repository...