Java libraries and proposal.

Peter Moulder pmoulder@csse.monash.edu.au
Tue May 22 20:33:00 GMT 2001


On Sun, May 20, 2001 at 04:13:31PM -0500, Adam Heath wrote:
> On Thu, 12 Apr 2001, Joe Emenaker wrote:
> > [...]
> > Well, each JVM on the system could have a script that builds the classpath
> > that it needs. That would be the first thing in the actual classpath passed
> > to the JVM. Next, you tack on the existing $CLASSPATH contents. Lastly, you
> > add the auto-generated stuff in ./lib, ./classes, $HOME/lib, $HOME/classes,
> > /usr/share/java/lib, and /usr/share/java/classes.
> 
> $CLASSPATH should ALWAYS be first, in any auto-generated setup.  How else
> would I be able to override something in a system directory?

The situation is the same as with MANPATH etc., i.e. the value of
CLASSPATH says where system classes go, using an empty path component.
E.g.:

   CLASSPATH	Equivalent to
   :/foo:/bar	${system}:/foo:/bar
   /foo:/bar:	/foo:/bar:${system}
   /foo::/bar	/foo:${system}:/bar

This means that one can append or prepend to CLASSPATH, and the right
thing happens if CLASSPATH is unset.

(jdk before 1.2 didn't do this at all; from memory, jdk 1.2 does some but
not all of the three cases given above.)

pjm.



More information about the Java mailing list