

- FindBugs - works on bytecode, uses BCEL. Source code uses templates, nifty stuff!
- Jamit - bytecode analyzer, nice graphs
- JWiz - Research project, checks some neat stuff, like if you create a Button without adding an ActionListener to it. Neat.
- DoctorJ - Written in C++. Uses Lex and YACC. Checks Javadoc, syntax and calculates metrics.
- Toad - All kinds of stuff from Big Blue.
- JLint - Written in C++. Uses data flow analysis and a lock graph to do lots of synchronization checks. Operates on class files, not source code.
- Checkstyle - Very detailed, supports both Maven and Ant. Uses ANTLR.
- JCSC - Does a variety of coding standard checks, uses JavaCC and the GNU Regexp package.
- JStyle - $995, nice folks, lots of metrics and rules
- Simian - fast, works with Java, C#, C, CPP, COBOL, JSP, HTML
- CodePro Studio - $589, works with Eclipse, lots of rules
- KodeIn - $75, lots of rules, uses JavaCC.
- JTest - Very nice with tons of features,
but also very expensive and requires a running X server (or Xvfb) to run on
Linux. They charge $500 to move a license from one machine to another.
- Assent - The usual stuff, seems pretty complete.
- CodeCompanion - Decent collection of rules, $199.
- AzoJavaChecker - Rules aren't listed online so it's hard to tell what they have. Not sure how much it costs since I don't know German.
- Aubjex - Rules aren't listed online. Appears to have some code modification stuff, which would be cool to have in PMD. $299.
- Flaw Detector - In beta, does control/data flow analysis to detect NullPointerExceptions
- Simian - fast, works with Java, C#, C, CPP, COBOL, JSP, HTML
- Simscan - free for open source projects