Chapter 1. Introduction

Table of Contents

Project Philosophy
Project History

This document is primarily intended as an orientation resource and collection of acquired knowledge for Rice students working as DrJava developers. As an open-source project, DrJava's source code is also available for browsing and modification to the general public, and so the following will also serve to provide those interested with the necessary tools to build, fix, and improve the code base. (Although we do not usually provide direct Subversion commit access to individuals outside the Rice development team, interested parties are welcome to submit changes via the SourceForge Tracker forums.)


We cover the following topics:

  • Introduction provides a high-level sense of purpose and history for the DrJava project.

  • Getting Started describes how to set up and use the essential tools required to build and modify the DrJava source code.

  • Supporting Technology provides a more in-depth guide to a variety of third-party technologies (applications and libraries) used to build and run DrJava.

  • System Architecture provides a high-level view of the DrJava sources. It describes the code organization and discusses various significant design decisions.

  • Development Best Practices describes the coding and testing standards we maintain (or aspire to) in the DrJava code base.

  • Project Administration contains instructions directed at project administrators. It covers, for example, making official DrJava releases and maintaining the project Web site.