Skip to main content

Summary

FeatureStatusNotes
Maintainability✔Complexity, duplication, code smells
Linting✔
Auto-formatting✔
Custom checks✔
Security scanning✔AppSec, dependencies, and secrets
Code metrics✔
Code coverage✔

Details

Maintainability
Complexity✔Aka cognitive complexity
Cyclomatic complexity✔
Identical code duplication✔
Similar code duplication✔
Code smells✔
Linters
Checkstyle✔Static code analysis tool
PMD✔Source code analyzer
radarlint-java✔Static analysis tool
Auto-formatters
google-java-format✔Google’s Java formatter
Custom checks
ast-grep✔
Semgrep✔
ripgrep✔
Security scanning
Gitleaks✔Secrets scanning
OSV-Scanner✔Dependency scanning (SCA)
radarlint-java✔AppSec (SAST)
PMD✔AppSec (SAST)
Semgrep✔AppSec (SAST)
Trivy✔Dependency scanning (SCA)
TruffleHog✔Secrets scanning
Code coverage
JUnit✔
JaCoCo coverage format✔
Cobertura coverage format✔

File extensions

By default, Java files are defined as:
These patterns can be overridden from qlty.toml.

Supported Java versions

We officially support Java 8 and later for maintainability checks and code coverage. Each plugin may have its own version requirements.