Jacob
Jacob

Reputation: 14731

Java command not found on Linux

In Oracle Enterprise Linux when I type java I am getting

bash: java: command not found

I have installed Java 1.6 and I have the following

sudo update-alternatives --config java

There are 2 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
*  1           /usr/lib/jvm/jre-1.4.2-gcj/bin/java
 + 2           /usr/java/jre1.6.0_24/bin/java

How can I resolve this issue?

Thanks

Upvotes: 36

Views: 311828

Answers (8)

Baphomet
Baphomet

Reputation: 11

When you use:

$ sudo update-alternatives --config java

You can create a link to the java executable file in /etc/alternatives/java.
But if you don't see the OpenJDK you just installed, you can create the link directly with:

$ sudo ln -sf /usr/java/jre1.6.0_24/bin/java /etc/alternatives/java
$ sudo update-alternatives --install /usr/bin/java java /usr/java/jre1.6.0_24/bin/java 1

Then you can test it to prove that it works:

$ java -version

Upvotes: 1

Amir Rahati
Amir Rahati

Reputation: 21

just run this command

sudo apt install default-jre

Upvotes: 2

Maninder
Maninder

Reputation: 1919

I was having the same problem on my ec2 machine. Below these 2 commands helped me to fix the issue.

sudo yum update

sudo yum install java-11-amazon-corretto

Upvotes: 0

Shree
Shree

Reputation: 213

  1. Execute: vi ~/.bashrc OR vi ~/.bash_profile

(if above command will not allow to update the .bashrc file then you can open this file in notepad by writing command at terminal i.e. "leafpad ~/.bashrc")

  1. add line : export JAVA_HOME=/usr/java/jre1.6.0_24
  2. save the file (by using shift + Z + Z)
  3. source ~/.bashrc OR source ~/.bash_profile
  4. Execute : echo $JAVA_HOME (Output should print the path)

Upvotes: 1

alijandro
alijandro

Reputation: 12147

I use the following script to update the default alternative after install jdk.

#!/bin/bash
export JAVA_BIN_DIR=/usr/java/default/bin # replace with your installed directory
cd ${JAVA_BIN_DIR}
a=(java javac javadoc javah javap javaws)
for exe in ${a[@]}; do
    sudo update-alternatives --install "/usr/bin/${exe}" "${exe}" "${JAVA_BIN_DIR}/${exe}" 1
    sudo update-alternatives --set ${exe} ${JAVA_BIN_DIR}/${exe}
done

Upvotes: 3

Plentybinary
Plentybinary

Reputation: 179

I found the best way for me was to download unzip then symlink your new usr/java/jre-version/bin/java to your main bin as java.

Upvotes: 3

Marc Nunes
Marc Nunes

Reputation: 29

I had these choices:

-----------------------------------------------
*  1           /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java
 + 2           /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
   3           /home/ec2-user/local/java/jre1.7.0_25/bin/java

When I chose 3, it didn't work. When I chose 2, it did work.

Upvotes: 2

18bytes
18bytes

Reputation: 6029

You can add one of the Java path to PATH variable using the following command.

export PATH=$PATH:/usr/java/jre1.6.0_24/bin/

You can add this line to .bashrc file in your home directory. Adding this to .bashrc will ensure everytime you open bash it will be PATH variable is updated.

Upvotes: 63

Related Questions