When working with Java on a Linux system, knowing your current Java version can be crucial. Whether you’re developing software, running Java-based applications, or just curious, checking the version is straightforward. To find out the Java version installed on your Linux system, simply open a terminal and type java -version. This command will display the installed Java version along with other details.

Linux users often encounter multiple Java versions, especially when developing and testing various applications. We might have the Java Development Kit (JDK), Java Runtime Environment (JRE), or both installed. It’s essential to know which version is set as the default. Using the update-alternatives --config java command helps manage and switch between different Java versions installed on your system.
Beyond these commands, we can use additional methods like checking the package list or searching the system path. For instance, type which java to locate the Java binary or use package managers to list installed Java packages. Managing our Java environment efficiently ensures smooth operation and development, saving us from unforeseen issues down the line.
Contents
Installing Java on Linux Systems
To install Java on a Linux system, it’s important to first identify your current Java installation, choose the right Java version based on your needs, and then perform a step-by-step installation.
Identifying Current Java Installation
First, let’s check if Java is already installed on our system. We can do this using the command line. Open the terminal and run:
java -version
This command will display the version of Java currently installed. If Java isn’t installed, you’ll get a “command not found” error. For more details, you can use:
sudo update-java-alternatives -l
This shows all installed Java versions. Identifying the current installation helps us decide whether we need to update or install a new version.
Choosing the Right Java Version for Your Needs
Choosing the right Java version depends on your specific requirements.
For instance, many applications and development environments are compatible with different Java versions. Java 11 is widely recommended due to its long-term support (LTS). OpenJDK is a popular choice among developers for its open-source nature and reliability.
Before installation, consider compatibility with your applications. Research or consult your application’s documentation to determine the optimal Java version.
Step-by-Step Installation of OpenJDK
Installing OpenJDK on a Linux system can be done via different methods depending on the distribution. Here, we’ll cover Ubuntu/Debian and CentOS/RHEL.
On Ubuntu/Debian:
-
Update package lists:
sudo apt-get update -
Install OpenJDK:
sudo apt-get install openjdk-11-jdk -
Verify the installation:
java -version
On CentOS/RHEL:
-
Install OpenJDK using yum:
sudo yum install java-11-openjdk-devel -
Confirm the installation:
java -version
For both systems, this will install OpenJDK 11. If you need a different version, replace openjdk-11-jdk with openjdk-8-jdk or another version as required. Ensure to follow these steps correctly to avoid installation issues.
Managing Java Versions and Updates
In this section, we will cover how to manage multiple Java installations, update Java to the latest version, and handle minor version updates and bug fixes effectively.
Using Update-Alternatives for Multiple Java Installations
When managing several Java versions, update-alternatives becomes a useful tool. This command-line utility helps us set the default Java version among multiple installations.
By running sudo update-alternatives --config java, we can view a list of installed Java versions. Selecting a version involves typing the reference number for our choice. This command can be applied not just for Java Runtime (java) but also for Java Compiler (javac), Java Shell (jshell), and other tools.
Here is how you can do it in a few steps:
- Install a specific Java version if it’s not yet available.
- Open your terminal and run the command.
- Select the version from the input list.
| Command | Description |
sudo update-alternatives --config java |
Displays and manages Java versions |
sudo update-alternatives --config javac |
Manages Java Compiler versions |
Updating Java to the Latest Version
Keeping Java updated is crucial for security patches and performance improvements. To update Java to the latest version:
- Add the repository: Use a repository that hosts the latest Java releases. On Ubuntu, for instance, you might use
sudo add-apt-repository ppa:webupd8team/java. - Update package index: Refresh your package index by running
sudo apt-get update. - Install latest version: Install the new Java version,
sudo apt-get install oracle-java16-installer, or the version specified by your repository.
This process ensures that you have the latest major version, which includes the newest features and optimizations.
Handling Java’s Minor Version Updates and Bug Fixes
Minor version updates and bug fixes are equally important. These updates often address specific vulnerabilities and stability issues.
To manage these updates:
- Check for updates periodically using your package manager.
- In most systems, running
sudo apt-get update && sudo apt-get upgradeupdates packages including Java. - For manual updates, always download from the official Oracle or OpenJDK websites.
Keeping up with minor releases ensures that bug fixes and minor performance improvements are applied, minimizing potential security risks and enhancing overall stability.
Working with Java Development Tools
Mastering Java development tools enhances our productivity, particularly when compiling programs, setting up the compiler, and understanding version outputs. Let’s break these down for clarity.
Compiling Programs with Javac
The cornerstone of our Java toolset is javac, the Java compiler. Javac compiles .java source files into .class bytecode files, which the Java Virtual Machine (JVM) executes.
To compile a Java program, navigate to your project’s directory in the terminal and run:
javac MyProgram.java
This command converts the MyProgram.java source file into MyProgram.class. It’s essential that our source files are error-free, or javac will flag syntax issues. Don’t forget to check for dependencies and import statements to ensure smooth compilation.
Setting Up Java Compiler Path Correctly on Linux
Configuring the path for the Java compiler is crucial. Without it, our terminal won’t recognize javac commands. We need to modify the .bashrc file:
nano ~/.bashrc
Add the Java compiler’s location:
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export PATH=$PATH:$JAVA_HOME/bin
Save and exit the editor, then apply changes:
source ~/.bashrc
Verify the configuration by running:
javac -version
Correct path setup ensures our development environment recognizes and executes Java commands without a hitch.
Understanding the Java Compiler Version Outputs
Interpreting the javac -version output helps identify the compiler’s version. Running:
javac -version
Outputs something like:
javac 11.0.9.1
This tells us the compiler is version 11.0.9.1. Matching the javac version with our project’s JDK requirements avoids compatibility issues. Different versions may support different language features or libraries, so ensuring alignment is key for stable, bug-free development.
Understanding these outputs also aids in troubleshooting. Knowing our compiler’s version can clarify potential version-specific bugs or deprecated functions in our code. This knowledge is foundational for any Java developer aiming to maintain robust applications.
Troubleshooting Common Java Installation Issues
When installing Java on a Linux system, we may encounter several issues. Knowing how to identify and resolve these problems ensures that our system runs smoothly.
Resolving Incorrect Java Version and Path Problems
It’s common to face issues where the Java version or path isn’t correctly set. First, let’s check the installed version. Open a terminal window and execute:
java -version
This command shows the current Java version. If it’s incorrect, use the following command to find where Java is installed:
which java
If the path is wrong, we need to update the JAVA_HOME environment variable. Edit the .bashrc or .bash_profile file in your home directory:
nano ~/.bashrc
Add or update the JAVA_HOME variable:
export JAVA_HOME=/path/to/java
export PATH=$JAVA_HOME/bin:$PATH
Then, reload the file:
source ~/.bashrc
Sometimes, there’s more than one Java version installed. The update-alternatives command helps manage multiple versions:
sudo update-alternatives --config java
This lists all available versions and lets us choose the default.
Diagnosing Problems with Java Package Installation
Issues during Java package installation are quite common. First, verify if the package is properly installed. We can list all installed packages:
dpkg --list | grep -i jdk # For Debian-based
rpm -qa | grep -i jdk # For RPM-based
For missing packages, the following commands install Java:
sudo apt-get install default-jdk # Debian-based systems
sudo yum install java-1.8.0-openjdk # RPM-based systems
Some installations may fail due to repository errors. Updating the package manager resolves this:
sudo apt-get update # Debian-based systems
sudo yum clean all && sudo yum update # RPM-based systems
Using the ls command checks if the installation directory exists:
ls /usr/lib/jvm
Symbolic link errors, often caused by incompatible installations, are fixed by recreating the links:
sudo ln -s /path/to/java /usr/bin/java
By following these steps, we can ensure that Java is correctly installed and configured on our Linux systems.