0

I set JAVA_HOME in .bashrc on my Ubuntu 22.04.2 LTS system, but when I check the version, it's still the old one:

ruomini@ruomini-XPS-13-9370:~$ echo $JAVA_HOME
/home/ruomini/jdk-17.0.7
ruomini@ruomini-XPS-13-9370:~$ java -version
openjdk version "11.0.18" 2023-01-17
OpenJDK Runtime Environment (build 11.0.18+10-post-Ubuntu-0ubuntu122.04)
OpenJDK 64-Bit Server VM (build 11.0.18+10-post-Ubuntu-0ubuntu122.04, mixed 
mode, sharing)
ruomini@ruomini-XPS-13-9370:~$ 

UPDATE: I tried what was suggested below but for some reason, it didn't help: Java 17 doesn't appear, even though I installed it in /usr/lib/jvm:

ruomini@ruomini-XPS-13-9370:~/android-studio/bin$ update- 
alternatives --list java

/usr/lib/jvm/java-11-openjdk-amd64/bin/java
/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
ruomini@ruomini-XPS-13-9370:~/android-studio/bin$ ls -al 
/usr/lib/jvm
total 40
drwxr-xr-x   5 root root  4096 May 15 09:31 .
drwxr-xr-x 159 root root 16384 Feb 23 18:18 ..
lrwxrwxrwx   1 root root    10 May 15 09:16 default-java -> jdk-17.0.7
lrwxrwxrwx   1 root root    21 Jul 18  2019 java-1.11.0- 
openjdk-amd64 -> java-11-openjdk-amd64
-rw-r--r--   1 root root  2047 Jan 20 10:07 .java-1.11.0- 
openjdk-amd64.jinfo
drwxr-xr-x   9 root root  4096 Mar  1 06:01 java-11- 
openjdk-amd64
lrwxrwxrwx   1 root root    20 Mar 12  2018 java-1.8.0- 
openjdk-amd64 -> java-8-openjdk-amd64
-rw-r--r--   1 root root  2764 Jan 24 20:02 .java-1.8.0- 
openjdk-amd64.jinfo
drwxr-xr-x   5 root root  4096 Jun 24  2016 java-8- 
openjdk-amd64
drwxr-xr-x   9 root root  4096 May 15 09:09 jdk-17.0.7
ruomini@ruomini-XPS-13-9370:~/android-studio/bin$ 

UPDATE It turns out that I hadn't properly installed the Java SDK. Once it was installed correctly, the problem went away.

FractalBob
  • 3,225
  • 4
  • 29
  • 40
  • 8
    `JAVA_HOME` is frequently misunderstood. The *tl;dr* is that Java itself doesn't care about that value. Some applications that *use* Java might look at it to decide what Java version to launch, but if you simply run `java` then only what is on your `PATH` matters. – Joachim Sauer May 15 '23 at 07:47

2 Answers2

0

In Ubuntu you can run

update-alternatives --list java

then you will get a listing of properly installed JDKs/JREs the operating system knows about.

/usr/lib/jvm/java-11-openjdk-amd64/bin/java
/usr/lib/jvm/java-7-oracle/jre/bin/java
/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java

then run
update-alternatives --set <one of the list items> to switch to a different one.

knb
  • 9,138
  • 4
  • 58
  • 85
-2

execute the source command /etc/profile

Pisces
  • 1