How to fix the ‘Java not recognized’ error
Here are the three easiest ways to fix Java’s ‘not recognized as an internal or external command’ error:
- Install or re-install Java and the JDK on your computer
- Add Java’s bin directory to the computer’s PATH
- Restart the command prompt, terminal window or Powershell
Is Java installed?
To run the Java command, you must have Java installed.
That could mean having either the Java Runtime Environment (JRE) or the full Java Development Kit (JDK) installed. But in order to fix the ‘Java not recognized’ error, you must first make sure that Java has been installed.
There are many ways to install Java on Windows or Ubuntu.
Install Java on Ubuntu
To install Java on Ubuntu, a single apt install command is sufficient.
sudo apt install default-jre Setting up default-jre (2:1.11-72build2) ...
A Java install on windows can be performed quickly by downloading the Adoptium JDK and running the .msi file with all of the default options selected.
Add Java to the PATH
The JDK installation’s \bin directory is where the Java executable file is found.
If the \bin directory of the JDK or JRE is not added to the Windows or Linux PATH variable, programs may not be able to find it at runtime. This would certainly cause the ‘Java not recognized’ error, even if the JDK or JRE is properly installed.
Restart the terminal window
The terminal window and the command prompt only read environment variables when they first start up.
If the JDK has been installed and the PATH variable set properly, you will still encounter a ‘Java not recognized’ error if PowerShell or the command prompt have not been restarted.
Restart your terminal window, or the application that needs to find the Java command, and try again. The ‘Java not recognized’ error should go away for good.
Full text of Java error
The full text of the Java not recognized error is as follows:
C:\java-error-fix> java -version 'java' is not recognized as an internal or external command, operable program or batch file.
When Java is installed and configured properly, this error will go away.