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.