Statische Codeanalyse
Statische Analyse prüft den Quellcode, ohne das Programm auszuführen. Sie findet typische Mängel früh: ungenutzte Variablen, widersprüchliche Typnutzung, verletzte Konventionen, bestimmte Fehler- und Sicherheitsmuster (in Java etwa SQL-Injection-Risiken in String-Konkatenation, nicht klassische Buffer Overflows).
Im Build hält sie die Qualität fest, bevor Tests und Reviews die restliche Arbeit tun.
IDE-Plugin (IntelliJ, Eclipse, VS Code u. a.) für Rückmeldung während des Tippens. Von SonarSource, verwandt mit SonarQube. Es gibt eine freie IDE-Variante; Server-Produkte sind separat lizenziert.
Läuft im Maven-Build und auf CI. Regeln stehen in einem Ruleset; Details auf der PMD-Seite.
Ebenfalls Build-integriert, stärker auf mögliche Laufzeitfehler (inklusive Null-Verträge über Annotationen). Siehe SpotBugs.