Wir führen statische Analysetools in das Build-System für unser Java-Produkt ein. Wir verwenden Maven2, daher ist die Integration von Checkstyle und PMD kostenlos. Es sieht jedoch so aus, als ob sich die Funktionalität dieser beiden Tools hinsichtlich der Durchsetzung grundlegender Stilregeln stark überschneidet.
Gibt es einen Vorteil, wenn beide verwendet werden? Ich möchte nicht 2 Tools warten, wenn eines funktioniert. Wenn wir eine auswählen, welche sollten wir verwenden und warum?
Wir planen auch die Verwendung von FindBugs. Gibt es andere statische Analysewerkzeuge, die wir uns ansehen sollten?
Update: Konsens scheint zu sein, dass PMD CheckStyle vorgezogen wird. Ich sehe keinen soliden Grund, beides zu verwenden, und ich möchte nicht zwei Sätze von Regeldateien verwalten, daher werden wir wahrscheinlich ausschließlich PMD anstreben. Wir werden auch FindBugs und möglicherweise Macker einbringen, um Architekturregeln durchzusetzen.