Table of Contents

Similar to PMD

Open Source

  • Checkstyle - Very detailed, supports both Maven and Ant. Uses ANTLR.
  • DoctorJ - Uses JavaCC. Checks Javadoc, syntax and calculates metrics.
  • ESC/Java - Finds null dereference errors, array bounds errors, type cast errors, and race conditions. Uses Java Modeling Language annotations.
  • FindBugs - works on bytecode, uses BCEL. Source code uses templates, nifty stuff!
  • SpotBugs - SpotBugs is the spiritual successor of FindBugs, carrying on from the point where it left off with support of its community.
  • Hammurapi - Uses ANTLR, excellent documentation, lots of rules
  • Jamit - bytecode analyzer, nice graphs
  • JCSC - Does a variety of coding standard checks, uses JavaCC and the GNU Regexp package.
  • Jikes - More than a compiler; now it reports code warnings too
  • 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.
  • JPathFinder - A verification VM written by NASA; supports a subset of the Java packages
  • JWiz - Research project, checks some neat stuff, like if you create a Button without adding an ActionListener to it. Neat.

Commercial

  • AppPerfect - 750 rules, produces PDF/Excel reports, supports auto-fixing problems
  • Assent - The usual stuff, seems pretty complete.
  • Aubjex - Rules aren’t listed online. Appears to have some code modification stuff, which would be cool to have in PMD. $299.
  • 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.
  • CodePro AnalytiX - Eclipse plug-in, extensive audit rules, JUnit test generation/editing, code coverage and analysis
  • Enerjy Java Code Analyser - 200 rules, lots of IDE plugins
  • Flaw Detector - In beta, does control/data flow analysis to detect NullPointerExceptions
  • JStyle - $995, nice folks, lots of metrics and rules
  • 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.
  • Lint4J - Lock graph, DFA, and type analysis, many EJB checks
  • SolidSDD - Code duplication detection, nice graphical reporting. Free licensing available for Educational or OSS use.

Similar to CPD

Commercial

  • Simian - fast, works with Java, C#, C, CPP, COBOL, JSP, HTML
  • Simscan - free for open source projects

High level reporting

  • XRadar - Aggregates data from a lot of code quality tool to generate a full quality dashboard.
  • Sonar - Pretty much like XRadar, but younger project, fully integrated to maven 2 (but requires a database)
  • Maven Dashboard - Same kind of aggregator but only for maven project.
  • QALab - Yet another maven plugin…