I installed the latest Oracle Java sdk onto my new openSUSE 12.3 environment. I updated the update alternatives thing but the environment variables don’t follow suite. Sure I could set the variables manually with a script every time I start a java app but if they are in the env without my having done anything, can I at least have them come correctly?
me@host:~> env | grep -i java
JRE_HOME=/usr/lib64/jvm/java-1.5.0/jre
JAVA_BINDIR=/usr/lib64/jvm/java-1.5.0/bin
JAVA_HOME=/usr/lib64/jvm/java-1.5.0
SDK_HOME=/usr/lib64/jvm/java-1.5.0
JDK_HOME=/usr/lib64/jvm/java-1.5.0
JAVA_ROOT=/usr/lib64/jvm/java-1.5.0
What I did to set up the Oracle java:
/usr/sbin/update-alternatives --install /usr/bin/java java /usr/local/jdk1.7.0_17/bin/java 1
/usr/sbin/update-alternatives --install “/usr/lib64/browser-plugins/javaplugin.so” “javaplugin” “/usr/local/jdk1.7.0_17/jre/lib/amd64/libnpjp2.so” 20000
/usr/sbin/update-alternatives --set java /usr/local/jdk1.7.0_17/bin/java
/usr/sbin/update-alternatives --install /usr/bin/javac javac /usr/local/jdk1.7.0_17/bin/javac 1
me@host:~> which java
/usr/bin/java
me@host:~> ls -l /usr/bin/java
lrwxrwxrwx 1 root root 22 Mar 18 22:04 /usr/bin/java -> /etc/alternatives/java
me@host:~> ls -l /etc/alternatives/java
lrwxrwxrwx 1 root root 31 Mar 19 20:58 /etc/alternatives/java -> /usr/local/jdk1.7.0_17/bin/java
me@host:~> cat .profile
Sample .profile for SuSE Linux
rewritten by Christian Steinruecken <cstein@suse.de>
This file is read each time a login shell is started.
All other interactive shells will only read .bashrc; this is particularly
important for language settings, see below.
test -z “$PROFILEREAD” && . /etc/profile || true
Most applications support several languages for their output.
To make use of this feature, simply uncomment one of the lines below or
add your own one (see /usr/share/locale/locale.alias for more codes)
This overwrites the system default set in /etc/sysconfig/language
in the variable RC_LANG.
#export LANG=de_DE.UTF-8 # uncomment this line for German output
#export LANG=fr_FR.UTF-8 # uncomment this line for French output
#export LANG=es_ES.UTF-8 # uncomment this line for Spanish output
Some people don’t like fortune. If you uncomment the following lines,
you will have a fortune each time you log in
#if -x /usr/bin/fortune ] ; then
echo
/usr/bin/fortune
echo
#fi
me@host:~> cat .bashrc
Sample .bashrc for SuSE Linux
Copyright (c) SuSE GmbH Nuernberg
There are 3 different types of shells in bash: the login shell, normal shell
and interactive shell. Login shells read ~/.profile and interactive shells
read ~/.bashrc; in our setup, /etc/profile sources ~/.bashrc - thus all
settings made here will also take effect in a login shell.
NOTE: It is recommended to make language settings in ~/.profile rather than
here, since multilingual X sessions would not work properly if LANG is over-
ridden in every subshell.
Some applications read the EDITOR variable to determine your favourite text
editor. So uncomment the line below and enter the editor of your choice
#export EDITOR=/usr/bin/vim
#export EDITOR=/usr/bin/mcedit
For some news readers it makes sense to specify the NEWSSERVER variable here
#export NEWSSERVER=your.news.server
If you want to use a Palm device with Linux, uncomment the two lines below.
For some (older) Palm Pilots, you might need to set a lower baud rate
e.g. 57600 or 38400; lowest is 9600 (very slow!)
#export PILOTPORT=/dev/pilot
#export PILOTRATE=115200
test -s ~/.alias && . ~/.alias || true
richi@zwirgli:~>
My guess is that it’s with the script /etc/profile.d/alljava.csh . But shouldn’t this look at the “alternative” symlinks?
Regards,
Richard