Skip to main content
PMD is an extensible multilanguage static code analyzer. It’s mainly concerned with Java. CodeRabbit runs PMD v7.28.0.

Files

PMD will run on files with the following extensions:
  • .java
  • .jsp
  • .kt (Kotlin)
  • .apex (Salesforce Apex)
  • pom.xml (Maven)

Configuration

boolean
default:true
Enable PMD
string
Optional path to the PMD configuration file relative to the repository.
.coderabbit.yaml
PMD uses an XML ruleset. CodeRabbit uses the file named in config_file when it exists; otherwise it looks for ruleset.xml in the repository. If neither is found, CodeRabbit generates a default ruleset based on the selected review profile.

When we skip PMD

CodeRabbit will skip running PMD when:
  • PMD is disabled in CodeRabbit settings or .coderabbit.yaml.
  • PMD is already running in GitHub workflows.