Findbugs ist tot, lang lebe Findbugs

Um potenzielle Fehler und Stolperfallen im Programmcode zu identifizieren, gibt es das Tool Findbugs. Es analysiert den Java-Bytecode und findet dabei Codestellen, an welchen potenziell Probleme auftreten können. Beispiele dafür sind inkonsistente equals()-hashCode()-Methoden, unsichere Casts, mögliche Stack Overflows, möglicherweise auftretende, aber nicht beachtete Exceptions, etc.

Seit Anfang November gibt es allerdings eine Diskussion darüber, wie das Projekt fortgesetzt werden soll. Maintainer und Committer Andrey Loskutov hat vor einiger Zeit (2. November 2016) dazu eine Meldung zum Projektstatus („Findbugs in its current form is dead“) über die Findbugs-Mailingliste veröffentlicht.

Aus dieser Meldung geht hervor, dass neben privaten Zeitgründen und der Tatsache, dass Lokutov effektiv der einzige aktuell aktive Committer ist, die anhaltende Abwesenheit von Projektleiter Bill Pugh ein Problem darstelle. Ausschließlich dieser verfüge über die benötigten administrativen Berechtigungen, um Releases auf der Website zu veröffentlichen, sowie Quellcode-Berechtigungen auf Github anzupassen und neue Committer hinzuzufügen. Der Projektleiter scheint laut Andrey Loskutov jedoch nicht an einem weiteren Bestehen des Projektes interessiert zu sein.

Nachdem das Projekt bereits von der Community geforkt wurde, hat sich der Projektleiter schließlich hier gemeldet. Nun wird das weitere Vorgehen in der Community diskutiert. Die Diskussion kann über das Archiv der Mailingliste nachverfolgt werden.

Gibt es Alternativen zu Findbugs? Zunächst gibt es das Projekt Huntbugs, welches in der Email von Loskutov selbst als Alternative vorgeschlagen wird. Dieses Tool befindet sich laut der Github-Projektseite jedoch noch in einer frühen Entwicklungsphase. Es enthält neben 222 von Findbugs reimplementierten Warnungen auch einige zusätzliche Warnungen. Findbugs hatte allerdings über 400 potenzielle Bugs abgedeckt (Liste).

Daneben gibt es den Findbugs-Fork Spotbugs. Dieser ist im Rahmen der oben erwähnten Diskussion entstanden, wird nun aber eventuell wieder eingestellt (siehe Mailingliste).

Fazit

Für das Auffinden potenzieller Bugs im Quellcode ist Findbugs trotz der etwas ungewissen Zukunft nach wie vor das Tool der Wahl. Zum aktuellen Zeitpunkt gibt es kein vergleichbares Open-Source Substitut für Findbugs. Allerhöchstens Huntbugs könnte Findbugs partiell substituieren. Da sich Huntbugs jedoch noch in einer frühen Entwicklungsphase befindet, ist der Funktionsumfang deutlich geringer, als der von Findbugs.

Short URL for this post: http://wp.me/p4nxik-2Np
This entry was posted in Java and Quality and tagged , , , . Bookmark the permalink.

One Response to Findbugs ist tot, lang lebe Findbugs

  1. Pingback: Java Code Qualität verbessern | techscouting through the java news

Leave a Reply