Checkstyle

Checkstyle

Basisdaten

Aktuelle Version 13.10.0[1]
(9. August 2026)
Betriebssystem plattformübergreifend
Programmier­sprache Java[2]
Kategorie Statische Code-Analyse
Lizenz GNU LGPL[3]
checkstyle.sourceforge.net

Checkstyle ist ein in der Softwareentwicklung verwendetes Werkzeug für die Statische Code-Analyse zur Prüfung des Programmierstils von Java-Sourcecode.

Einsatzgebiet

Der in Softwareentwicklungsprojekten verwendete Programmierstil kann die Softwarequalität, Lesbarkeit und Wiederverwendbarkeit verbessern. Damit können die Kosten der Entwicklung und Wartung der Software reduziert werden. Checkstyle kann eine Reihe von automatisierbaren Prüfungen des Programmierstils durchführen. Diese Prüfungen können einzeln ein- und ausgeschaltet werden sowie für den in dem zu prüfenden Projekt definierten Programmierstil konfiguriert werden. Das Fehlschlagen einer Prüfung führt je nach Konfiguration der Prüfung zu einem Fehler oder einer Warnung. Checkstyle kann um eigene Prüfungen erweitert werden.

Checkstyle ist kein Werkzeug zur automatisierten Erkennung von Programmierfehlern. Durch das Aufzeigen unerwünschter Programmierstile können aber mit Hilfe von Checkstyle Programmierfehler gefunden oder vermieden werden.

Checkstyle ist auch kein Werkzeug zur automatisierten Behebung fehlerhafter Programmierstile. Für Fehler in der Formatierung des Codes können Programme zur Quelltextformatierung eingesetzt werden.

Module

Checkstyle kommt mit einer Reihe von Modulen, die Prüfungen zu bestimmten Themen enthalten. Diese Module können um eigene Module mit eigenen Prüfungen erweitert werden.

  • Annotations – Prüfungen zur korrekten Verwendung von Annotationen
  • Block Checks – Prüfungen von Codeblöcken
  • Class Design – Prüfungen zum Softwaredesign
  • Coding – Prüfungen allgemeiner Kodierungsrichtlinien
  • Duplicate Code – Prüfungen auf das Vorhandensein doppelten Codes (bis Version 6.1.1)
  • Headers – Prüfungen bezüglich Kopfzeilen von Sourcecodedateien
  • Imports – Prüfungen zur Verwendung von Imports
  • Javadoc Comments – Prüfungen zum Vorhandensein, der Vollständigkeit und Formatierung von Javadoc-Kommentaren
  • Metrics – Prüfungen der Einhaltung diverser Softwaremetriken
  • Miscellaneous – diverse nicht in die anderen Module einordenbare Prüfungen
  • Modifiers – Prüfungen zur korrekten Verwendung von Zugriffsmodifikatoren
  • Naming Conventions – Prüfungen der Einhaltung definierter Namenskonventionen
  • Regexp – Selbst mittels regulären Ausdrücken konfigurierbare Prüfungen
  • Size Violations – Prüfungen zur Größe von Klassen, Methoden, Anzahl Parameter usw.
  • Whitespace – Prüfungen zur Formatierung des Codes hinsichtlich Leerzeichen

Einsatz

Checkstyle wird als Java Archive geliefert und kann somit in jeder Java Virtual Machine und als Apache Ant Task laufen. Eine Reihe von Werkzeugen stellen Plugins für Checkstyle zur Verfügung, unter anderen auch Eclipse, Apache Maven oder SonarQube.

Geschichte

Checkstyle wurde ursprünglich 2001 von Oliver Burn entwickelt und wird jetzt als Open-Source-Software von einer Reihe von Entwicklern gewartet und weiterentwickelt.

Alternativen

Im Java-Umfeld werden üblicherweise neben Checkstyle auch noch PMD und FindBugs für ähnliche Zwecke wie Checkstyle eingesetzt. Siehe auch Liste von Werkzeugen zur statischen Codeanalyse.

  1. Release 13.10.0. 9. August 2026 (abgerufen am 10. August 2026).
  2. The checkstyle Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 18. Juli 2018).
  3. The checkstyle Open Source Project on Open Hub: Licenses Page. In: Open Hub. (abgerufen am 18. Juli 2018).

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.