Starting up with dejava system


This file contains description about things to do or to know before running the system. See WINDOWS file for features and operations of each window.

pre-condition

JDK beta or later is required for this system. You need to get it via ftp etc. and install it in advance. This version of dejava is good with JDK beta on Solaris for SPARC. So it may not work correctly under other platforms. And due to the incompativilities between alpha3 and beta, this system *DOES NOT WORK* under alpha3.

install

The package is tar'ed and gzip'ed. You can extract this system under any directory you like. The directory named dejava will be created and source files, documents etc. will go under this directory. Then move to the created directory and run the shell script install.sh to install dejava system.

ex)

	$ cd /usr/local/java
	$ ls
	dejava-1.2b-src.tar.gz
	$ gunzip dejava-1.2b-src.tar.gz | tar xf -
	$ ls -F
	dejava/    dejava-1.2b-src.tar.gz
	$ cd dejava
	$ ./install.sh
		: (install script asks you a few questions)

setup

Add the directory that install.sh reports as binary directory to CLASSPATH environment variable.

ex)

	$ CLASSPATH=/usr/local/java/dejava/bin:$CLASSPATH
	$ export CLASSPATH

Add java* commands' path to PATH environment variable if PATH doesn't contain it.

ex)

	$ PATH=/usr/local/java/bin:$PATH
$ export PATH

DISPLAY, LD_LIBRARY_PATH environment variables are need to be set up to fit your environment.

before running

The first time you run dejava system after installing it, the system will create a directory named .dejava under your home directory. This directory contains information files about source files managed by dejava system. This directory is called 'profile directory' in dejava system. Profile directory is created in $HOME/.dejava by default, but you can specify path name for profile directory using java system property named dejava.profdir. Information for each project goes into the directory named .dejava under the project's top directory, if it exists.

dejava system manages java sources in 4 levels --- project, package, class, method. The logical location of a source code is specified by the object called CodePath. String replesentation of CodePath is like:

	project/package.class#method

To manage exsiting source files by dejava, you need to coordinate these source files to satisfy following conditions:

Project is a name associated with certain directory. Package name is made by replacing file separator charactor in relative pathname from project directory with '.'. For example, when a project named jdk is associated with /usr/local/java/src, the CodePath for the method 'public static void exit(int)' of class System described in /usr/local/java/src/java/lang/System.java seems like:

	jdk/java.lang.System#exit(int)

starting

To start dejava system, do:
	$ java dejava.sys.SystemManager [project names ...]
When it starts up, the system transcript window comes up. If you specified project names in command line, corresponding project browsers also come up.

browsing

Changes you made with dejava windows on class/method description will be fixed when you accept them, and will be written in file when you sync the class/package/project they belong. Comments for package/project will be written in the file when you accept them. If you forget to accept, or to sync, contents of the file will not be changed. Although, all changes you made are automatically synced when the system goes down. Compilation causes sync for the file contains the class to be compiled. When you're going to compile whole the package, all updated files in the package will be synced. You must select proper menu to accept -- Package menu to accept package comment, Method menu to accept method description, and so on.

Following is the flow chart of development cycle on dejava:

		    +---(auto sync)----+
		    ^		       |
		    |                  v
	update -> accept -> sync -> compile -> execute
          ^         |        |         |          |
          |         v        v         v          v
          +---------+--------+---------+----------+

See WINDOWS file for functionalities of each window.

exiting

Each window used in dejava system can close by selecting close or quit from File menu. To shut down the dejava system, close the system transcript.

(Java and HotJava are trademarks of Sun Microsystems, Inc.)