How to Set Java Home on CentOS

Techwalla may earn compensation through affiliate links in this story. Learn more about our affiliate and product review process here.
Some Java programs use the JAVA_HOME variable to find the Java Runtime Environment.
Image Credit: scyther5/iStock/Getty Images

Set up your CentOS system so that your Java applications know exactly where to find the executable files and libraries they need to run. If you have root or administrator privileges, set the $JAVA_HOME variable to Java's directory location for all users system-wide. If you only need to set the path for your non-root, user sessions, add the path information to your personal Bash shell profile.

Advertisement

Set JAVA_HOME System-Wide

Video of the Day

Step 1

Start a root terminal session and then change directories to the /usr/lib/jvm folder. If you prefer, you can also log in to your system as root.

Video of the Day

Step 2

Display the folder's contents by typing the following command at the Bash shell prompt and then pressing "Enter:"

Advertisement

ls -l

The listing will show several symbolic links and a single folder that contains your Java package files. The Java folder installed on CentOS 7 systems may have a name resembling the following:

Advertisement

java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64

The full path to this folder, however, will be:

/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64

Advertisement

Step 3

Type the Bash shell Export command that will set the $JAVA_HOME variable to the Java folder's full path and then press "Enter." Your command should resemble the following:

export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64

Advertisement

Advertisement

If you type "echo $JAVA_HOME" (without the quotes) at the command line and press "Enter", the shell will display the JAVA_HOME path. The path change will be lost when you reboot, however, unless you add the change to the system profile located in the /etc folder.

Step 4

Switch directories to /etc and then open the "profile" text file using an editor like Vi, Emacs or Nano. The profile text file contains system-wide bash shell commands, parameters and variable available to all users.

Advertisement

Step 5

Scroll to a blank line near the bottom of the file, type the same Export command you entered at the shell prompt, save the file and then exit your editor. When you or another user logs in to a CentOS session, the JAVA_HOME variable will be set.

JAVA_HOME for Single Users

Step 1

Launch the file manager and then navigate to the /usr/lib/jvm folder. The file manager should display the icons for one folder and several symbolic links.

Advertisement

Step 2

Select the folder and then press "Ctrl-C" to copy it to the clipboard. One item the clipboard will contain is the full directory path to the Java folder.

Advertisement

Step 3

As a normal, non-root user, launch Gedit and then open the ".bash_profile" text file located in your Home folder. Settings included in the .bash_profile are set every time you log in to your system.

Advertisement

Step 4

Click a blank line near the bottom of the file and then press "Ctrl-V" to paste Java folder's full path. The pasted line should resemble the following:

file:///usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64

Advertisement

To put the path in a format you can use, however, delete the "file://" section. The result should resemble the following

/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64

Advertisement

Step 5

Add the Bash shell export command to this line that assigns the path to $JAVA_HOME, save your changes, and then exit Gedit. The final path command in your .bash_profile should resemble the following line:

export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64

Step 6

Log out of your CentOS session and then log back on set the $JAVA_HOME variable to Java's current location.

Advertisement

Advertisement

references