JAVA code quality & security

Static code analysis tools for your Java

Static code analysis for Java that detects bugs, code smells, and security vulnerabilities—right in your PRs and IDE.

Vertrauen von über 7 Millionen Entwicklern weltweit

Santander
U.S. Army
Nvidia
650+ STATIC CODE ANALYSIS RULES

Your Java code standards, covered

See all Java rules
star

Latest Java standards

With each Java version, we create dedicated static analysis rules so you learn shiny, new features and avoid pitfalls.

Learn moreLink Arrow
magnifying glass

Regex

Consistently find tricky, hard-to-spot issues in your regular expressions.

Learn moreLink Arrow
stopwatch

Quick fixes

Allow you to effortlessly repair your Java coding issues with just a click.

Learn moreLink Arrow
checklist

Test frameworks

Dozens of rules to ensure your tests are always robust and maintainable.

Learn moreLink Arrow

Wählen Sie die für Sie perfekte SonarQube Bereitstellung aus.

SonarQube Cloud

Die SaaS-Lösung für moderne DevOps

SonarQube Cloud analysiert Code in über 35 Sprachen, erkennt Probleme und bietet KI-gestützte Lösungen. Durch die Integration in Ihre DevOps-Tools werden bei jeder Zusammenführung Regeln für Wartbarkeit, Zuverlässigkeit und Sicherheit durchgesetzt.

  • In wenigen Minuten einsatzbereit
  • Keine Wartung und Infrastrukturverwaltung
  • Automatische Updates und Einführung neuer Funktionen
  • 99,9 % Verfügbarkeit gemäß SLA mit globaler Verfügbarkeit
  • SOC 2 Typ II zertifizierte Sicherheit

SonarQube Server

Selbstverwaltet für maximale Kontrolle

SonarQube Server analysiert über 35 Programmiersprachen, erkennt Probleme und liefert KI-gestützte Vorschläge. Sie können es dort einsetzen, wo Sie arbeiten: vor Ort oder in der Cloud, integriert in Ihren DevOps-Server. So werden Wartbarkeit, Zuverlässigkeit und Sicherheit bei jeder Zusammenführung gewährleistet.

  • Vollständige Datenhoheit und Kontrolle über den Datenschutz
  • Benutzerdefinierte Konfigurationen und Unternehmensintegrationen
  • Air-Gapped-Bereitstellungsoptionen verfügbar
  • Engagierter Support und professionelle Dienstleistungen
Security for Java

Own the code security of your Java

Reduce security risk in Java with taint-analysis detection aligned to OWASP Top 10 and CWE Top 25 standards.

  • Taint analysis finds real source→sink injection flows across files and functions. 
  • Standards mapping to OWASP and CWE for auditor-friendly reporting.  
  • Vulnerabilities covered: SQLi, XSS, command injection, deserialization, SSRF.
Explore Java security rulesLink Arrow
code is secure
WRITE BETTER JAVA

Build truly secure, reliable, and maintainable software

Sonar seamlessly integrates with your existing CI/CD pipeline, providing the critical feedback you need to improve code quality and security as you work.

Developer-first code quality, right in your IDE

Everything you need to write better code:

  • Real-Time Analysis: Issues are flagged in-line as you type.
  • Effortless Remediation: Resolve problems in seconds with automatic quick fixes.
  • Zero Configuration: Install from your IDE's marketplace—no setup required.
  • Continuous Learning: Improve your skills and learn best practices.

Available on Your Favorite IDE Marketplace:

  • Visual Studio | VS Code | JetBrains (IntelliJ, Rider, etc.) | Eclipse
Explore SonarQube for IDELink Arrow
sonar working with jetbrains, eclipse, vs and vs code

Empower your team with unified code quality

Integrate SonarQube into your workflow for consistent code quality.

  • Automated Pull Request Analysis: Automatically scan every pull request to prevent bugs from being merged.
  • Consistent Quality Standards: Align your team on a shared definition of quality.
  • Visible Quality Gate: Get a clear, objective status on release readiness.
  • Seamless DevOps Integration: Embed analysis directly into your existing tools.

Tightly Integrates with Your DevOps Platform:

  • GitHub | Bitbucket | Azure DevOps | GitLab
Testen Sie SonarQube Cloud kostenlosTesten Sie SonarQube Cloud kostenlos icon
main branch of code is passed
Bijay Mangaraj image

Die größte Auswirkung war, dass wir uns darauf konzentrieren konnten, Code Quality zu erstellen, anstatt uns mit technischen Schulden zu befassen.“

Bijay MangarajLeitender Vizepräsident

resources

The latest from Sonar

Schaffen Sie Vertrauen in jede Zeile Code

Sind Sie bereit, besseren und sichereren Code zu liefern? Starten Sie noch heute mit der für Sie passenden SonarQube-Bereitstellung.

Rating image

4.6 / 5

We support your Java development workflow

Language Versions

Java LTS 8, 11, 17, 21, and all intermediary versions up to 24 are fully supported

Web/Application Frameworks

Struts, Spring, JSP

Test Frameworks

JUnit 4/5, AssertJ, Mockito, Spring Test, TestNG

ORMs

Hibernate, Spring JDBC Template, JDO, VertX SQL

Build Integrations

Maven, Gradle, Ant

Java FAQs

What does SonarQube offer for Java static code analysis?

SonarQube helps identify bugs, code smells, and security vulnerabilities in Java code. It applies a large set of highly accurate rules to evaluate code quality, reliability, and maintainability to help teams to continuously improve Java code through automated analysis.

What types of issues can SonarQube detect in Java code?

SonarQube detects complex bugs, technical debt, also known as code smells, and security vulnerabilities in Java code. It also finds issues aligned with security standards such as OWASP and CWE Top 25 to help uncover common and critical security risks to help meet compliance. SonarQube can catch both obvious and complex issues that are often difficult to identify manually.

How many rules are available for Java analysis in SonarQube?

SonarQube includes over 700 rules for Java, covering a wide range of quality, security and maintainability concerns. These rules enforce coding standards and highlight risky patterns in the codebase. SonarQube’s breadth of coverage in Java is key to maintaining consistent code quality across projects.

Can SonarQube help developers fix Java issues quickly?

Yes, SonarQube provides guidance and Quick Fixes to help developers resolve Java issues efficiently and automatically. It includes clear rule descriptions, contextual insights, and remediation support to explain why an issue matters and how to fix it. In supported environments, developers can apply fixes directly with minimal effort.

Does SonarQube support Java analysis in the IDE?

Yes, SonarQubeQube for IDE enables real-time Java code analysis directly within the integrated development environment. It surfaces issues as developers write code, along with detailed explanations and suggested fixes. SonarQube for IDE helps developers catch issues in code early without requiring additional configuration.

How does SonarQube integrate into Java development workflows?

SonarQube integrates into CI/CD pipelines and pull request workflows to automate Java code reviews. It automatically analyzes branches and pull requests, provides feedback directly in DevOps platform’s pull request comments, and enforces code quality and code security standards using quality gates to prevent substandard code from progressing through the CI/CD pipeline. This helps teams maintain code quality standards seamlessly throughout the development lifecycle.

Does SonarQube support Java frameworks and ecosystems?

Yes, SonarQube supports common Java frameworks and tools used in modern development such as Spring, Struts, and JSP, allowing teams to analyze full applications rather than isolated components. This ensures consistent quality checks across the entire codebase.

What advanced analysis techniques does SonarQube use for Java?

SonarQube uses advanced techniques such as symbolic execution and data flow bug detection to detect complex issues in Java code that are otherwise very difficult to uncover. These methods find deeper bugs and security vulnerabilities that go beyond simple pattern matching tools. The results are presented with context to make them actionable for developers.

Which Java versions are supported by SonarQube?

SonarQube supports Java LTS 8, 11, 17, 21, and all intermediary versions up to 24, allowing teams to analyze both legacy and modern applications. This broad compatibility is important for organizations maintaining diverse codebases and keeping current with modern language constructs. It ensures that teams apply consistent quality standards regardless of Java version and helps developers raise their knowledge to the latest advances Java has to offer.