Capsule Reviews of JAVA tools

Last modified Jan 28, 2002.
Time moves on, and since I last maintained this page 3.5 years ago there has been a massive shakeout among the tools listed here, to the extent that the information here is basicly useless.   I'm leaving it as an historical document (a few of the links are still live).   Personally, I still use Kawa 3.0, which seems to be among the casualties.  Among the live links, Forte looks like a good bet.

These reviews are all based on brief examinations of the programs in question, running under windows NT 4.0. My objective was to select a set of tools to use for my own work. I'm publishing these capsule reviews to save you all some trouble.

Development Environments 

My current Pick of the litter among the simpler and cheaper IDEs is Kawa with JPad Pro nearly tied. Kawa wins because of it's GUI to JDB, but JPAD has a better editing environment. . 

Java Decompilers 

(update June 15, 1997) Special in-depth JavaWorld story about these three decompilers 

Other tools 

Bold links are for worthwhile tools, written in Java

Other reviews

Sam's Java page: Sam seems to specialize in reviews of GUI-builders.
Java World (aug 96) reviews of Macintosh IDEs and (april 98) reviews of Visual IDEs
Lan Times reviews java IDEs (Aug 5, 1996)

The reviews

Assure, java edition

 Assure is a runtime analysis tool for thread behavior.  It checks for thread deadlocks, thread stalls, and data races.  Using assure is a two part process, in phase 1 you run your application/applet under Assure's instrumented JVM, which creates a log file.  In phase 2, you run Assure's UI which presents the results, shows you the source code that it has reported as suspected.

Not all the things Assure complains about are necessarily errors, and not all real errors can be found by this tool, and the problems it points out can be very subtle and hard to comprehend what the problem might be.  Nonetheless, I was shocked by the number of problems Assure found in  my "thoroughly debugged" code.  I don't plan to write any more major applications without it.

I wrote an extened review of Assure which appears in JavaWorld

Things that work

Bugs, Misfeatures, and Gochas

Brewmaster pre-release 1.0

(note: current version is 2.0)

Brewmaster is a repository based system. The process of importing my projects was smooth, except for one glitch in the parser which is "already fixed".

The GUI has lots of little panes and tiny little icons, which do not have pop-up identification or other self documentation, which makes it something of a puzzle to learn to use.

The class browser/editor combination itself seems pretty solid, and once you get used to the paradigm for navigating, pretty usable. Changes are parsed when you save them, so it is impossible to store a syntactically incorrect program in the repository.

The biggest problem with brewmaster is that it's support for compiling, debugging and running programs is tedious and very limited.

Things that work

Bugs, Misfeatures, and Gochas

Symantec Cafe

There is no review here of Symanec Cafe or any of its cousins. I have tried various free betas of Cafe, and had difficulty. Symantec's technical support by email for these betas has been nonexistent, and Semantec doesn't offer free trials of it's non-beta versions.

In view of their generally good reputation and many apparently satisfied customers, I've decided not to write a review based on my unsatisfactory experiences. Your mileage may vary. I finally added this note so I could stop answering "Why No Cafe" messages.

ED for windows version 3.72

ED is an extension of a pre-existing editor/IDE for Java. It also has support for lots of other specialized types of documents. If you work with many types of documents and multiple programming languages, ED is worth investigating.

Things that work

Bugs, Misfeatures, and Gochas

IavaDraw version 3.0

(note: current version is 3.11)

IavaDraw is a conventional IDE with some useful extras. The two most useful that I noticed are an integrated C-like preprocessor, and the option of changing its menu structure to the German language. Actually, since IavaDraw's authors are in Germany, it's probably the option to change the menus to English. In any case, if Deutsch is your first language, this would be a significant feature.

Unfortunately, the product is pretty buggy. At first I was unable to get the compiler to run; apparently it Iavadraw works only with JDK 1.1 final. Even with that problem resolved, I never got a satisfactory project built from my existing sources.

At one point Iavadraw's internal state got so confused that it couldn't be restarted successfully. A day later that problem seemed to have fixed itself - generally, Iavadraw had a marked propensity to hang up (and have to be terminated from the task manager) or to spontaneously crash with some sort of access violation. And, whenever there was trouble with any of the Java tools it tried to invoke, there was no useful feedback about the nature of the problem.

Things that work

Bugs, Misfeatures, and Gochas

Java Workshop

(note: Java workshop seems to be discontinued, with Sun throwing support to Forte Tools, which are successor to Netbeans)

Dick Chase's Java Editor (version 2.07)

(note: current version is 2.08a)

Dick Chase's Java Editor is a very rudimentary, no-frills java editor based on a multiple document frame and JDK. Its principle virtue is that it is completely free, and the author even offers to provide source code. It is also very small and light on resource consumption, which may make it useful for those with extreme low-end configurations.

Things that work

Bugs, Misfeatures, and Gochas

Javelin 5.02

(note: current version is 6.3)

Javelin is a radical graphical environment, which generates text files only as an artifact for the compiler. The concept sounds good, and the GUI looks pretty spiffy, but the entire interface to the outside world is obviously ad-hoc; In other words, there are bugs lurking around every unexplored corner. In the process of my evaluation, the import/export/compile process broke in many different ways; and the internal database became corrupted at least three times. The worst of these problems have been fixed in release 5.02, but there is every reason to believe that each new project will uncover new ones, at least for some time. Generally speaking, Javelin shows the classic signs of an immature, poorly tested product, rushed to market to catch the wave. A lot of things work, but behind every working feature are a gaggle of bugs with the potential to stop useful work cold.

Things that work

Bugs, Misfeatures, and Gochas

Finally, it should be noted that the "free evaluation" version is too crippled to be useful, or to support a meaningful evaluation.

JPad Pro 3.1.1

(note: current version is 3.7)

JPad Pro is bigger, better, and slightly more expensive version of Jpad. The downloadable demo version will only let you edit tiny files - enough to let you get the flavor, but not enough for any serious work. The principle improvements of JPad Pro over Jpad are

Jpad's project capability is worth mentioning because it is unusual. JPad Pro automatically and dynamically collects all java source files in a hierarchy into a project. This can be pretty convenient, if your hierarchy contains no extraneous files, or it can be annoying if it does.

JPad supports both JDK and Microsoft SDK.

Jpad is based on an internal scripting language; the entire IDE is composed of a set of script driven commands. Consequently, it's potentially very customizable, and with enough effort, it's possible for you to diagnose and fix any glitches in its interaction with your environment, add your own commands, etc.

Things that work

Bugs, Misfeatures, and Gochas

JPad 3.1.1

See JPAD pr. JPAD is the same, except without the project management capability and microsoft SDK support.

Kawa 3.0 (released)

(note: current version is 4.0)

Kawa is is based on a multiple document editor frame. Light on the frills, but what is there is solid.

Things that work

Bugs, Misfeatures, and Gochas

Microsoft Visual J++ (1.1 preview)

(note: current version is 6.0)

Visual J++ is a java environment embedded in the same framework as Microsoft Visual C++. Version 1.1 is based on a newly revamped, very clean looking, revision. Consequently, the development environment is very mature, featureful, and familiar. Unfortunately, the Java specific elements of the environment are still buggy. Considering that if any company in the world has the resources to make such an environment work, it is Microsoft: The other vendors of Java products had better watch their backs.

Things that work

Bugs, Misfeatures, and Gochas

MJE 0.98

Mini Java Editor (MJE) is a tiny JAVA application. Sources are included. The author is primarily interested in pushing the Java cross platform compatibility envelope. The server for MJE is not up on weekends.

Things that work

Bugs, Misfeatures, and Gochas

Mojo (version 2.0)

MOJO is a repository based IDE, with a lot of emphasis on automated tools for constructing GUIs. Their comparison chart distributed at Internet World advertised that they can now import flat java files, which induced me to give them a second look.

As it turns out, they still cannot import flat files in any meaningful way. Their customer support told me to create a new class in the "Coder" and use cut/paste to import my text from an external editor. What a joke!

Still, I was in a mood to humor them, so I tried cutting/pasting my simplest class, with an eye to adding my standard class libraries to their class library. I didn't succeed. Though I'm sure there is a way, Mojo is definitely not a general purpose programmer's tool.

Things that work

Bugs, Misfeatures, and Gochas

OEW 2.0

(Note: OEW's current release is 3.0)

OEW is a repository based class editor. Unlike some of the other repository based editors reviewed here, it seems to basically work, but there are a few killer bugs which reduced it's usability factor to nil.

I imported a large collection of source files, and OEW converted all the file names to lower case. For example, one of my classes is "" which generates "BaseObject.class". In the explorer/modules menu it shows up as "", and building complains that BaseObject.class must be defined in a file named ""

Since most of my class names use mixed case, this was a pretty severe problem; but I decided to treat it as a challenge and use OEW to convert a self consistent group of files to lower case names. The rest of the bugs noted below ensued. I never did get the project converted.

Things that work

Bugs, Misfeatures, and Gochas

IBM VisualAge for Java 1.0 beta 1

(current version is 3.02)
VisualAge is a repository based java environment, of a really radical design. After importing my projects, which was completely seamless, my first shock was to search in vain for the "compile" button - but there isn't one. Visualage keeps everything compiled all the time, and maintains a list of unresolved problems.

You can run any class, or execute bits of code in the "scrapbook" window. There is no distinction between running, debugging, and editing code while debugging - it's all part of the same integrated process.

When the IDE's Java runtime bugs are fixed, this is going to be a blow-them-away better development environment.

Things that work

Bugs, Misfeatures, and Gochas

WingEditor 1.02

(note: current version is 1.6.1)

WingEditor was formerly known as JavaEditor

WingEditor is an embryonic IDE written entirely in java. It piggy backs on JDK, as most IDEs seem to do. While promising in concept, its not ready for prime time.

Things that work

Bugs, Misfeatures, and Gochas

Forte Tools for Java (community edition)

Forte tools replaces Netbeans, which replaced Xelfi, which originally occupied this space.  Apparently the whole show has been taken over by Sun, which has also dropped its Java Workshop product.  Forte tools is also promised to become an Open Source product very soon.

I haven't yet used Forte tools, but their predecessor, Netbeans was promising.
Netbeans is pure java!, and the best pure java IDE I've seen - Definitely worth a look, even if not ready for prime time yet.

ClassViewer (no version)

Classviewer allows you to view the contents of a class file. It presents enough information to determine the interfaces contained in the class. Classviewer is really basic, one class at a time, but a tool like this is absolutely essential to deal with classes in the absence of source code.

Things that work

Bugs, Misfeatures, and Gochas

HyperProfiler (version 1.3)

Hyperprofiler digests and presents profiler output from JDK. The principal display is a fairly clear display of caller/callee relationships. There is an auxiliary display of the entire call graph presented on a hyperbolic plane. It's hard to see much use for the hyper display, but its pretty and lots of fun to play with.

There are obviously a lot more features to be added, but what is there is solid and extremely useful.

Things that work

Bugs, Misfeatures, and Gochas

Profileviewer (version of Aug 12, 1996)

Profileviewer digests and presents profile output from JDK, similar to Hyperprofiler, but inferior to it in almost all respects. It's basic layout is poorer, and its harder to install, and its presentation contains less useful information.

Things that work

Bugs, Misfeatures, and Gochas

DeJaVu (version 1.0)

DeJaVu is bundled with OEW and is distributed with the free trial version.

Things that work

Bugs, Misfeatures, and Gochas

High Performance Compiler for Java (version of Oct 1, 1997)

HPJC is a compiler which produces directly executable files from Java 1.1 source. There are some limitations, but it seems to work, and the output runs fast! I tested the Windows-NT version.

JD, a Java Debugger (version of Oct 24, 1997)

JD is a 100% pure Java debugger for Java 1.1. The UI and feature set are crude, but it all seems to work. Sure beats the hell out of JDB!

Mocha (Beta 1)

Mocha is a complete class decompiler, written in Java. Given a class, it produces a compilable source file for the class. The resulting ".mocha" file is remarkably similar to the original ".java" file, if you have it.

News:The author of Mocha is deceased, and Mocha has disappeared from it's original distribution point. The link above is an alternate, and seems to be within the intent of its original distribution.

Things that work

Bugs, Misfeatures, and Gochas

WingDis 2.06

(note: current version is 2.12)

WingDis was formerly known as JavaDis

WingDis is another java disassembler, like Mocha; but with the advantage of having living authors. There is a demo version, but the demo is too crippled to do a realistic analysis of its capabilities and faults. Wingsoft gave me a 30-day non-crippled version to test.

In general, javadis is worthwhile to use to look at a class hoping to glean some insight into it; but I would definitely not trust it to disassemble a class to be recompiled.

Things that work

Bugs, Misfeatures, and Gochas

comments/suggestions to:

 If you think your software is treated unfairly, fix your bugs or convince me they're features. If you want your software reviewed, be patient, (or send me free software :-)

My Java page

my home page