I have used PMD, Findbugs and CheckStyle quite extensively on many projects.
While there is quite some overlap between the analysis done by these tools and I tend to use all the 3 on my projects.
I think that the most useful analysis is produced by Findbugs. I think that PMD and Checkstyle are limited to coding conventions, best-practices, etc, but Findbugs has been able to flag some real bugs in my code, which I consider the most useful.
Answers
Add AnswerI have used PMD, Findbugs and CheckStyle quite extensively on many projects.
While there is quite some overlap between the analysis done by these tools and I tend to use all the 3 on my projects.
I think that the most useful analysis is produced by Findbugs. I think that PMD and Checkstyle are limited to coding conventions, best-practices, etc, but Findbugs has been able to flag some real bugs in my code, which I consider the most useful.
We you FindBug in many other project and very pleased with it results.
PMD is good for picking and choosing rules for your project to adhere to.
Checkstyle keeps developers in line with how their code is structured. This makes it easier to read everyone else's code.
Findbugs is okay, but isn't as customizable as PMD.
JDepend is used to find cyclic dependancies and report on third party dependancies.
JavaNCSS is fun to watch line of code count.
Put them all together with a CI tool and do analysis over time.
checkstyle?
profile
Share your knowledge