3

I am running Ubuntu 16.04. I have downloaded JDK 7.0 from Oracle website and untar'ed and put it in a folder /opt/JDK/, such that the final install directory is /opt/JDK/jdk1.7.0_80 Then I executed the following commands given in this SO answer:

update-alternatives --install /usr/bin/java java /opt/jdk1.8.0/bin/java 1
update-alternatives --install /usr/bin/javac javac /opt/jdk1.8.0/bin/javac 1
update-alternatives --install /usr/lib/mozilla/plugins/libjavaplugin.so mozilla-javaplugin.so /opt/jdk1.8.0/jre/lib/amd64/libnpjp2.so 1
update-alternatives --set java /opt/jdk1.8.0/bin/java
update-alternatives --set javac /opt/jdk1.8.0/bin/javac
update-alternatives --set mozilla-javaplugin.so /opt/jdk1.8.0/jre/lib/amd64/libnpjp2.so

I want to set the JAVA_HOME environment variable. I know how to do it using /etc/environment. The confusion is which path to use.

Should I use /usr/bin/java?

Or should I use /opt/JDK/jdk1.7.0_80?

Or should I use /opt/JDK/jdk1.7.0_80/bin?

The output of update-alternatives --config java is:

There is 1 choice for the alternative java (providing /usr/bin/java).

  Selection    Path                           Priority   Status
------------------------------------------------------------
  0            /opt/JDK/jdk1.7.0_80/bin/java   1         auto mode
* 1            /opt/JDK/jdk1.7.0_80/bin/java   1         manual mode

Press <enter> to keep the current choice[*], or type selection number:

1 Answer 1

2

As you can see two alternatives are identical, so you can use both of them. Simply you can use following command to set JAVA_HOME:

JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")

The command update-alternatives --config java is used when you have different JAVA installed on your machine. For example Mine is as follow:

There are 2 choices for the alternative java (providing /usr/bin/java).

* 0            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      auto mode
  1            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      manual mode
  2            /usr/lib/jvm/java-8-oracle/jre/bin/java          1081      manual mode

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .