I have a server running rhel5 and jre 1.6. All my apps are running perfectly for now. But I want to install java 1.7 but keeping java 1.6 as the default so my running apps want be affected. If I want to install java 1.7 from a rpm how can I do this, and how can I run a my new app with the new version of java without changing default java version

3 Answers 3


Install the java versions you want, running applications should not be affected despite the default java version being changed. Then run the alternatives utility to pick your default java version:

alternatives --config java
alternatives --config javac

Verify your setup with

java -version
javac -version

If you're unsure, try this on a non-production host first.

Edit: To force tomcat to use a specific java version, no matter what the default, place a setenv.sh in tomcat's bin directory containing


Source: https://stackoverflow.com/questions/1698913/how-to-set-java-home-in-tomcat-config

  • In addition to alternatives --config java, for jdk you must run alternatives --config javac to choose which jdk environment you want to run your application in.
    – Zeeshan
    Jul 30, 2014 at 0:14
  • Problem is, even though my running apps use older java version I want to run only tomcat from a newer java version. How can I achieve this?
    – ivcode
    Aug 11, 2014 at 6:32
  • 1
    @ivcode I've updated my answer.
    – fuero
    Aug 11, 2014 at 8:46

First of all install Java 7/8 using:

sudo apt-get install openjdk-7-jdk

Then you need to update alternatives using:

sudo update-alternatives --config java

You will see:

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

Selection    Path                                            Priority   Status
* 0            /usr/lib/jvm/java-7-oracle/jre/bin/java          1062      auto mode
  1            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      manual mode
  2            /usr/lib/jvm/java-7-oracle/jre/bin/java          1062      manual mode

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

Chose one that you need and type:

java -version

Then you can run your app on Java 7 and after that rollback it to 6 version.


first you need to make sure that your java apps are running thier java/javac from an absolute path. now the default java is the java you have when you execute:

# java -version

every java app you want to run must specify the absolute path according to your needs. to change the default execute:

# which java

and find out where is your default java bin is located and change the link to your designated jdk

You must log in to answer this question.

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