edu.rice.cs.drjava This is the top-level package for DrJava.
edu.rice.cs.drjava.config This package contains the code that allows for dynamically modifying the configuration options in DrJava.
edu.rice.cs.drjava.model The model package is responsible for the majority of the logic and state in DrJava.
edu.rice.cs.drjava.model.cache The idea behind this new interface is that the rest of the model should not talk directly to the document cache but rather to an adapter to the cache.
edu.rice.cs.drjava.model.compiler Contains adaptor code for invoking various Java compilers.
edu.rice.cs.drjava.model.debug Contains the code for DrJava's JPDA-based debugger.
edu.rice.cs.drjava.model.definitions Provides the data model for storing Java source code.
edu.rice.cs.drjava.model.definitions.indent Provides a decision tree used to correctly indent the current line.
edu.rice.cs.drjava.model.definitions.reducedmodel This package contains the code for the "reduced model": a model of the text in the definitions pane designed for quickly locating matching parentheses, quotation marks, and comment delimiters.
edu.rice.cs.drjava.model.junit Contains the code for integration of the JUnit testing facility.
edu.rice.cs.drjava.model.print Provides the ability to print source code listed in the definitions pane.
edu.rice.cs.drjava.model.repl Contains the adapter code for the interpreter, as well as the code for managing the history of interactions, the handling of exceptions thrown by the interpreter, etc.
edu.rice.cs.drjava.model.repl.newjvm Manages the creation and invocation of the separate JVM used by the interactions pane.
edu.rice.cs.drjava.platform This package provides a framework for abstracting platform-specific calls away from the platform-independent DrJava codebase.
edu.rice.cs.drjava.ui The ui package contains classes for the default user interface for DrJava.
edu.rice.cs.drjava.ui.config Contains the GUI code for displaying and modifying configuration options.
edu.rice.cs.util A collection of utility classes and packages.
edu.rice.cs.util.newjvm This package is a system to allow the invocation and control of a new Java virtual machine.
edu.rice.cs.util.swing Some utility classes for working in Swing.