ok, this definitely falls in the n00b category... I'm trying to upgrade Java on my server and just need to update the PATH, CLASSPATH, and JAVA_HOME environment variables.
This is what they currently are:
PATH=/usr/local/jdk1.5.0_15//bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/java/bin:/usr/local/ant/bin:/root/bin
JAVA_HOME=/usr/local/jdk1.5.0_15/
CLASSPATH=/usr/local/jdk1.5.0_15//jre/lib
This is my java install directories under /usr/local:
4 drwxr-xr-x 9 root root 4096 Sep 19 2008 jdk1.5.0_15
4 drwxr-xr-x 10 root root 4096 Sep 23 2008 jdk1.6.0_07
0 lrwxrwxrwx 1 root root 11 Sep 23 2008 java -> jdk1.6.0_07
And this is the java that is being used:
[root@dev local]# which java
/usr/local/jdk1.5.0_15/bin/java
I looked at my /etc/bashrc and it is calling /etc/profile.d/java.sh, which looks like this:
export JAVA_HOME=/usr/local/java
export ANT_HOME=/usr/local/ant
export PATH=$PATH:$JAVA_HOME/bin:$ANT_HOME/bin
What's confusing me is that I can see that the java.sh is indeed running but things aren't working out properly.
1) I can see the java.sh appends the last 2 entries of the PATH shown above. But the first entry in the path goes to the jdk1.5 with a double //bin.
2) JAVA_HOME does not point to /usr/local/java but to /usr/local/jdk1.5.0_15/
I looked at my /etc/bashrc and it is calling /etc/profile.d/java.sh, which looks like this:
Im going to assume that by 'calling' you mean that the entry in bashrc looks like this:
If that is the case, then you need to source the java.sh rather than executing it:
That's a leading dot then a space.
When you export a variable in a script, it is placed into the environment, but is 'visible' only to that script and any processes that the script invokes. Environment variables don't/cannot perk back up to the parent process. If you are indeed invoking java.sh this is what is happening.
By sourcing the file, you are executing the commands in java.sh as though they existed in the current file, .bashrc in this case. This has the effect of setting the environment variables for the current shell as you desire.
The commands are being source, but only if the shell is not a login (interactive) shell.
If you don't have a .profile or .bash_profile in your home directory, create one and add the single line to source the file. If you do have one, most do, edit it to add the command:
Hi I was hoping some one might be able to help me with my problem.
I am trying to write a script that will help organize our print server by identifying when a new file has arrived and deleting the older version.
I have most of the code written that I need although I still have one small... (2 Replies)
Hi,
I have a file(testfile.txt) that contains list of variables as shown below. T
$$FirstName=James
$$LastName=Fox
$$Dateofbirth=1980-02-04
……and so on there are 50 different variables.
I am writing a script(script1.sh) that will update the above three variable one by one with the values... (6 Replies)
Hi All,
I need to understand following three environment variables and their usages in HP Unix.
_M_ARENA_OPTS
_M_CACHE_OPTS
PTHREAD_SCOPE_SYSTEM
How does these environment variables influence multi threaded applciation and how do we decide the value of these variables? Is there... (0 Replies)
Hi Experts,
Need your help in understanding the commands to setup the environment variables in hp-ux.
Beleive need to use either set,setenv or export.
I am confused between above three options, when to use which option?
On command line, I have tried both set and setenv but couldn't... (1 Reply)
I have read tons of posts about how you can't set persisting environment variable in a child script of a shell and have it persist. The only way is to source a file as
% . <scriptname>
I am finding that true... but I know there is a way around it. I just don't know how. I worked for 6... (5 Replies)
hi,
I want to create a new EV(Environment Variable) through a c program and I done this thing through setenv() method. But the newly created EV is not permanent, i.e. when I exit from the program the EV also no longer lives. But I want to make it a permanent EV for the current user. Actually I... (6 Replies)
Hi!
How-to get the environment variables in GNU.
getenv() only fetches the ones that you can find under export (not the ones under declare)...
best regars .David (2 Replies)