
RevJava is a review assistant for (compiled) Java software. You can use RevJava to check critics that point out possible design and style improvements for your Java program. You can use it also to calculate metrics that characterize your program or to produce some (elementary) graph visualizations (see screenshots).
RevJava loads bytecode, so you don't have to have the source available. It can work on large collections of software - we've run it on programs with hundreds and even thousands of classes (including the JDK1.3 runtime and Borland's JBuilder).
RevJava is used mainly as a vehicle for experimenting with critics. We're looking at various kinds of (general and situational) problems that should be highlighted. We take our inspiration from our own experiences, but also from existing "bodies of knowledge" such as "code smells" or "heuristics".
While RevJava now already has some 94 critics, one of our goals is to make it easy to add your own checks to RevJava, allowing it to be tailored towards your situation. If you have suggestions for new rules or are interested in collaborating on it, send me an Email.
You can download RevJava from the SERC download page.
The change history since RevJava became available for download (may 2002) is described here.
RevJava was developed by Gert Florijn.
Input was provided by various people, such as Marc Evers, Ronald Haentjens Dekker,
Willem van den Ende en Erik Aalbregt, Mark van Elswijk and Matthijs Maat.
RevJava uses Markus Dahm's BCEL class load library. See http://bcel.sourceforge.net
If you're interested, have suggestions for critics, want to contribute, let me know via Email.
Gert Florijn - Last modifed: 07/02/03