
SonarJava has a great coverage of well-established quality standards. The SonarJava capability is available in Eclipse and IntelliJ for developers (SonarLint) as well as throughout the development chain for automated code review with on-premise SonarQube or on-line SonarCloud.
SonarJava is a code analyzer for Java projects. Information about the SonarJava features is available below;
Why SonarJava?
SonarQube is currently on the way to deprecate PMD, Checkstyle and Findbugs and use their own technology to analyze Java code (called SonarJava). They do it, because they don’t want to spend their time fixing, upgrading (or waiting on it) those libraries (e.g. for Java 8), which for example uses outdated libraries. Well at least since SonarQube 6.3+ it seems to be that Findbugs is (at the moment) no longer supported as a plugin.
Features
409+ rules (including 103+ bug detection, 273 Code Smells, 33 Vulerabilities)
Metrics (complexity, number of lines etc.)
Import of test coverage reports
Custom rules
SonarJava is being used in the following…
SonarQube
SonarCloud
SonarLint for Eclipse
SonarLint for Intellij IDEA
Supported versions, frameworks and special analyses…
Java language versions through 8
Frameworks Struts, Spring, Hibernate
Native integration with Maven, Gradle, and Ant
Metrics
Code Coverage by Tests: SonarJava supports the import of JaCoCo and Cobertura test coverage reports.
Custom Rules
SonarJava supports custom rules written in Java.
Reference
Latest posts by scmgalaxy K (see all)
- Use of runtime variables to save into another variable using register in Ansible - September 6, 2018
- Ansible & Ansible Tower Variable Precedence Hierarchy - September 6, 2018
- How to use template in Ansible? - September 6, 2018
Great article! SonarJava is the modern Java analysis engine used by SonarQube that increasingly replaces traditional tools like Checkstyle, PMD, and FindBugs by offering a unified, comprehensive rule set within SonarQube’s quality profiles. While historically SonarQube relied on those external tools, the platform now uses its own native analyzers and continues to expand rule coverage — meaning you get built‑in support for many style, bug‑pattern, and best‑practice checks without needing separate engines. That said, specialized tools such as Checkstyle and PMD can still be useful in CI builds or IDE workflows when you need very specific style or organizational rules not covered by SonarQube’s defaults. Ultimately, SonarJava simplifies static analysis by centralizing it under one system, improving maintainability and reducing duplication of analysis logic across tools.