jCVS Installation

# Installation Of jCVS

## Requirements

jCVS is a Java application. It uses the CVS client/server protocol provided via the inetd interface. You should check the detailed requirements list to be sure that you are completely prepared to use the jCVS application.

## Installing A CVS Server

jCVS requires a CVS Server to provide the client/server protocol it uses to do its work. Installing a cvs server is beyond the scope of this document. However, several points are worth noting. It is typical to have the cvs server started via inetd. Here is an example entry in the 'inetd.conf' configuration file:

    cvs stream tcp nowait root /usr/local/bin/cvs cvs pserver

Please note the 'pserver' argument being passed to cvs. This is what signals cvs to perform as a password based direct connection server.

## Installing jCVS

jCVS comes to you in several formats. The most common is the pkzip format, which is readable by WinZip. You can also get jCVS in a tar-ed, gzip-ed archive, or a Macintosh self-extracting archive. Regardless of the format of the archive, the first step in the installation is to extract the contents of the archive into a directory of your chosing.

After extracting the contents of the archive, the directory you chose to extract into should contain three directories, application and source. The 'application' directory contains the jCVS application, images, and documentation. The 'source' directory contains the entire com.ice.cvs and com.ice.jcvs source trees in another archive. You should only extract the contents of the source.zip archive if you wish to work with the source, or if you wish to view the 'com.ice.cvs' or 'com.ice.jcvs' package documentation.

The application directory should contain the following:

- The 'jcvs.jar' Jar file.
- The 'images' directory.
- The 'properties.txt' properties file.
- NOTEThere is no longer a 'projects.txt' file in the distribution. It is created automatically in your home directory.

### Notes On Properties

NOTE The properties handling has changed DRAMATICALLY!
There is no longer a need for the 'properties.txt' file as the default properties are now read from the JAR file. The properties.txt file is now included in the doc directory as a documentation of the defaults. You may still place a 'properties.txt' file in the directory from which jCVS is launched to provide a 'global override' of the default properties. The 'jcvsrc' file in your home directory should be used to override properties on a per user basis.

JCVS depends a great deal on properties. The default setup of jCVS utilizes a 'defaults.txt' file in the JAR file to establish the best default values for properties.

It is also possible to have properties that are loaded on a per user basis, which is very useful on multi-user machines. To accomodate this, jCVS will look in the home directory of the user running it for a user property file. The user property file is loaded after the defaults and after the global 'properties.txt' file (if one exists), and will override any existing property definitions with the settings found in the file.

The name of the user property file depends on your operating system. In fact, it depends on the file separator character. If the file separator character is a '/', which is typically a UNIX operating system, then the user property file name is '.jcvsrc'. Otherwise, the name is 'jcvsrc.txt'. Thus, Macintosh and Windows systems will look for 'jcvsrc.txt', and Linux systems will look for '.jcvsrc'.

The user property file will be looked for in the user's home directory. The home directory is determined by the Java system property 'user.home'. JCVS will print the value of the home directory when it is started.

### Getting It Started

JCVS is a Java application. This means that it will not run as an Applet. Therefore, you can not run jCVS in your favorite web browser. You must have the java interpretter installed on your machine to run jCVS. The interpretter must be release 1.1 or later.

NOTE: The main class for jCVS has changed. The new class name is 'com.ice.jcvs.CVSApplication'. Previously, jCVS was started with the class 'CVSApplication'. You must now include the package name 'com.ice.jcvs' with the class name.

JCVS starts the application via the class com.ice.jcvs.CVSApplication, which you will provide to the Java interpretter as the class in which to find the class method 'main()'.

To run jCVS, you will need to start the Java interpretter with the com.ice.jcvs.CVSApplication class as the class in which to find 'main'. On Windows machines, this usually is accomplished via an MSDOS 'command prompt' window. On UNIX systems, this is usually accomplished via an XTerm window.

It is possible to create a Shortcut under windows so that you can launch jCVS by double clicking the shortcut's icon. To accomplish this, put the complete command line in the Target field and the 'application' pathname in the Start In field, under the 'Shortcut' settings via the shortcut's 'Properties'. An example shortcut is included with the package.

For now, we will start jCVS by hand. In your command window, change your working directory (cd) to the 'application' directory which resulted from your unpackaging jCVS. NOTE many people have reported that they can not run jCVS, until they set the current directory to the application directory before they run.

Unfortunately, there is no universal means of invoking Java applications, so you need to use the command that fits your platform.

For Windows users, the following command should work:

    java -classpath ./jcvs.jar;%CLASSPATH% com.ice.jcvs.CVSApplication

For Solaris users, the following command should work:

    java -classpath ./jcvs.jar:$CLASSPATH com.ice.jcvs.CVSApplication

Note how Windows uses a semi-colon to separate entries in the classpath, and Solaris uses a colon. Also note that these commands assume that the Java installation modified your CLASSPATH environment variable to point to the classes.zip file. If this is not the case, then you will need to replace the above references to CLASSPATH with the actual full pathname of your classes.zip file. For instance, under Windows:

    java -classpath ./jcvs.jar;C:/jdk1.1.1/lib/classes.zip com.ice.jcvs.CVSApplication

The above command should invoke the java interpretter which should in turn display the jCVS Main Window.

If you get a message to the affect can not find class com.ice.jcvs.CVSApplication, then Java is not finding the file jcvs.jar. The most likely reason is that your current directory is not the application directory in which jcvs.jar is located.

If you get a message to the affect can not find class java/lang/Thread, then Java can not find the most basic classes from classes.zip. This is almost always the result of your classpath pointing to an incorrect or non-existent classes.zip file.

If you do see the jCVS Main Window, then follow the Beginning With jCVS document for instructions on how to checkout your first cvs project.

Please refer to the jCVS User Manual for complete details on using jCVS.

Take me back to the main page.

$Id: Installation.html,v 2.5 1998/08/07 03:21:06 time Exp $
Copyright (c) 1997 By Timothy Gerard Endres
jCVS is licensed to you under the GNU General Public License.