Jlint will check your Java code and find bugs, inconsistencies and
synchronization problems by doing data flow analysis and building a
lock graph.
