> Thanks, I had seen those directions and followed them, but I guess my
> understanding of the Java directory sturcture is in question. Having
[quoted text clipped - 3 lines]
> installation directory (/usr/java1.2). Do I link that jre directory
> to the new jre1.6.0_03 directory?
You apparently have a UNIX-like environment, such as BSD, Linux or Solaris,
correct?
Let's say you have a standard location to root all your Java installations. I
use /opt/java/ here. Apparently it's /usr/ at your location. Let's just
pretend that we have an envar JAVA_PARENT for that directory. In my case,
using bash I'd
$ export JAVA_PARENT=/opt/java
(You don't actually need this envar, of course, it just makes things easier to
talk about on Usenet.)
Unpack or copy your jre1.6.0_03 to $JAVA_PARENT. In your case you now have
two subdirectories:
$JAVA_PARENT/java1.2
$JAVA_PARENT/jre1.6.0_03
Now point JRE_HOME to the correct one, modify your PATH to use the correct
bin/ subdirectory of that one, and away you go.
Another way is to symbolically link your correct version of Java to, say,
$JAVA_PARENT/java. Then all things Javaesque can use
JRE_HOME=$JAVA_PARENT/java, and all you have to do is update the symbolic link
when you change versions.
The popular 'alternatives' mechanism can help you manage multiple versions of
the same service. Here's what I have:
# /usr/sbin/alternatives --display jdk
jdk - status is auto.
link currently points to /opt/java/jdk1.6.0_03-32
/opt/java/jdk1.5.0_13 - priority 1513
slave jre: /opt/java/jdk1.5.0_13/jre
/opt/java/jdk1.6.0_03 - priority 1600
slave jre: /opt/java/jdk1.6.0_03/jre
/opt/java/jdk1.6.0_03-32 - priority 1603
slave jre: /opt/java/jdk1.6.0_03-32/jre
Current `best' version is /opt/java/jdk1.6.0_03-32.
I use 'alternatives' to set up my symbolic link to /usr/java/java, which
currently points to the `best' version: /opt/java/jdk1.6.0_03-32.
$ echo $JAVA_HOME
/usr/java/java
$ echo $JRE_HOME
/usr/java/java/jre
(Aside: /usr and /opt are on separate hard drives. I find /usr more "natural"
as a location for things like JAVA_HOME, but I use /opt for large things.
Through the magic of the "ln -s" performed by 'alternatives', I have the best
of both.)

Signature
Lew
Martin Gregorie - 31 Oct 2007 13:35 GMT
> (Aside: /usr and /opt are on separate hard drives. I find /usr more
> "natural" as a location for things like JAVA_HOME, but I use /opt for
> large things. Through the magic of the "ln -s" performed by
> 'alternatives', I have the best of both.)
I add one extra tweak to that: I've replaced /usr/java with a symlink
pointing to /home/java and done the same with /usr/local and /home is a
separate partition.
This way upgrades are dead simple: I reformat everything except the
/home partition and do the install. This leaves me with an empty
/usr/local tree and no java. To put things back as they were I only have
to delete /usr/local and put the java and local symlinks back in /usr.
Then all(!) I have left to do is drop my custom config files back into
/etc and put the DNS stuff back in /var. Copies of these are held in
/home as you might expect.

Signature
martin@ | Martin Gregorie
gregorie. | Essex, UK
org |
Monty - 01 Nov 2007 18:27 GMT
I relinked the /usr/java1.2 directory to /usr/jre1.6.0_03 and it
worked for the most usual things we use. It doesn't work, however,
for the application I installed it for, which tells me the problem
lies elsewhere and not in the version.
Thanks for the input from everyone, it's been an education. I'll have
to contact Sun on this one.
Monty
>Do I link that jre directory
>to the new jre1.6.0_03 directory?
see http://mindprod.com/jgloss/jdk.html#WHYTHREE

Signature
Roedy Green Canadian Mind Products
The Java Glossary
http://mindprod.com