I've started to use
Sonar at both work and at home. Very useful for:
rules compliancecode coverageidentifying standard "problems" as per FindBugs and PMD (e.g. unused variables)identifying duplicated codeidentifying too complex code
And more.
Note that it is a relatively heavyweight application, and by default it requires your projects to use
Maven (although there is a way around that by using a
Hudson Sonar plugin).
Hudson itself has many plugins that will give you some of the reports that Sonar provides. But not all of them. I tend to use Hudson as my CI tool with Sonar triggered by Hudson each night (the creators of Sonar recommend it run as a daily build).
FindBugs does generate reports in many formats - take a look at
this sample report on the JBoss codebase as an example. Personally I don't like the way they do reports - it is non intuitive to me that the top 4 items work as tabs that you can click on, or that there is drill-down information on some screens (e.g. the "List bugs by bug category" screen). I tend to use FindBugs within Eclipse itself (there are plugins for most IDEs) and also generate a more generic XML report from the standalone FindBugs report that Hudson understands and can incorporate into it's daily build information.