FindBugs is an open source program to find bugs in Java programs. With this tool you can improve the performance of an application developed in Java and its security against exploiting bugs. FindBugs uses static analysis to inspect Java byte code for occurrences of bug patterns. That is, FindBugs can find bugs by simply inspecting a program’s code, executing the program are not necessary. And you don't even need the program's source code to use it.
The FindBugs program is based on the concept of bug patterns- a code idiom that is often an error. Bug patterns arise for a variety of reasons such as difficult language features, misunderstood API methods, misunderstood invariants when code is modified during maintenance and garden variety mistakes: typos, use of the wrong Boolean operator, etc
To use FindBugs, you need a runtime environment compatible with Java 2 Standard Edition, version 1.5 or later. FindBugs is platform independent, and is known to run on GNU/Linux, Windows, and MacOS X platforms.>>Download / FactSheet