How do I install Java Development Kit (JDK) 10 on Ubuntu?
The installation instructions on Oracle's help center only explain how to download and extract the archive on Linux platform, without any system setup.
Update: JDK 11 Now Available
sudo apt-get install openjdk-11-jdk
For JDK 10
Option 1: Easy Installation (PPA)
sudo add-apt-repository ppa:linuxuprising/java
sudo apt-get update
sudo apt-get install oracle-java10-installer
Then set as default with:
sudo apt-get install oracle-java10-set-default
And finally verify Installation with:
$ java -version
java version "10.0.1" 2018-04-17
Java(TM) SE Runtime Environment 18.3 (build 10.0.1+10)
Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10.0.1+10, mixed mode)
Source: Linux Uprising
Option 2: Manual Installation
Download OpenJDK 10 binaries for Linux.
Untar the downloaded archive: tar xzvf openjdk-10_linux-x64_bin.tar.gz
Move the extracted archive to where your system keeps your installed JDKs: sudo mv jdk-10 /usr/lib/jvm/java-10-openjdk-amd64/
Add the new Java alternative: sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-10-openjdk-amd64/bin/java 1 sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-10-openjdk-amd64/bin/javac 1
Update your system's java alternatives and choose JDK 10: $ sudo update-alternatives --config java
here are 3 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-9-openjdk-amd64/bin/java 1091 auto mode
* 1 /usr/lib/jvm/java-10-openjdk-amd64/bin/java 1 manual mode
2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
3 /usr/lib/jvm/java-9-openjdk-amd64/bin/java 1091 manual mode
Press
Verify your installation with: $ java --version openjdk 10 2018-03-20 OpenJDK Runtime Environment 18.3 (build 10+46) OpenJDK 64-Bit Server VM 18.3 (build 10+46, mixed mode) and $ javac --version javac 10
Done
If you prefer Oracle's JDK, download it and follow the installation steps as shown above.
I've found SdkMan! a very useful tool because it provides a convenient way for managing your JDKs from the shell.
For example, once it is installed, you can:
Install a specific JDK version: sdk install java 10.0.2-open
Downloading: java 10.0.2-open
In progress...
################# 12,3%
Use a specific JDK version: sdk use java 10.0.2-open
Using java version 10.0.2-open in this shell.
List available JDK: sdk list java
===================================================================
Available Java Versions
===================================================================
9.0.4-open
+ 8u161-oracle
8.0.191-oracle
> + 8.0.171-oracle
7.0.191-zulu
12.ea.15-open
11.0.1-open
10.0.2-open
1.0.0-rc8-graal
===================================================================
+ - local version
* - installed
> - currently in use
=======================================================================
And much more
There is a ppa on java 10 that installs oracle's java: https://launchpad.net/~linuxuprising/+archive/ubuntu/java
I am not sure if this will be maintained though. It seems to be a copy of the webupd8 way on how to handle oracle java installation (ref: documentation).
How to use this ppa:
sudo add-apt-repository ppa:linuxuprising/java
sudo apt-get update
sudo apt-get install oracle-java10-installer
Verify installation:
$ /usr/lib/jvm/java-10-oracle/bin/java -version
java version "10.0.1" 2018-04-17
Java(TM) SE Runtime Environment 18.3 (build 10.0.1+10)
Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10.0.1+10, mixed mode)
Setting up environment variables (make java10 default)
sudo apt-get install oracle-java10-set-default
Note: You need update-alternatives
only if you have multiple java versions.
Note: You can purge everything about Java before fresh installing new Java.
sudo apt purge java*
For Java 10 fresh installation
Download JDK 10 from here (you can download JRE and server JRE): http://www.oracle.com/technetwork/java/javase/downloads/index.html Extract and put somewhere in /opt/java directory. You putting JDK in /opt/java directory makes it will be usable for all users as it is being in the public /opt directory. (Note: I downloaded JDK, JRE, and server JRE, and extracted JDK and renamed extracted the folder to jdk10, extracted JRE and renamed extracted the folder to jre10, and extracted server JRE and renamed extracted the folder to jre10server as shown in below snapshot). Update your /etc/environment file as below
Now, you need to reload the /etc/environment
script file into the system using source command as below.
source /etc/environment
https://i.stack.imgur.com/dCRTH.png
If you want to know more about update-alternatives then here is the link: https://askubuntu.com/questions/159575/how-do-i-make-java-default-to-a-manually-installed-jre-jdk
You need to do update-alternatives --install before the final step.
sudo update-alternatives --install "/usr/bin/java" java "/usr/lib/jvm/java-10-openjdk-amd64/bin/java" 1
sudo update-alternatives --install "/usr/bin/javac" javac "/usr/lib/jvm/java-10-openjdk-amd64/bin/javac" 1
I've found a repo
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt update
sudo apt install openjdk-10-jdk
Install Jdk 10 On Linux Ubuntu
Download the required tarball from from Oracle official website, i.e. https://www.oracle.com Unzip this tarball using "tar -zxvf tarball_name” Create a folder named "java" in "/usr/lib", you need root permission sudo mkdir /usr/lib/java Move the extracted folder to “/usr/lib/java/” by using the following command: sudo mv java-10-dir-name/ /usr/lib/java/ Now go to the location, i.e. cd /usr/lib/java/java-10-dir-name/ Next, run these below scripts in terminal: sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/java/java-10-dir-name/bin/java" 1 sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/java/java-10-dir-name/bin/javac" 1 sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/java/java-10-dir-name/bin/javaws" 1 NOTE: In the commands given above, you have to name the extracted directory of "java" instead of "java-10-dir-name". Update the JAVA_HOME in your ~/.bashrc export JAVA_HOME=/usr/lib/java/java-10-dir-name set PATH="$PATH:$JAVA_HOME/bin" export PATH Verify the installation verify whether Java 10 is installed correctly in your machine, execute the following command in your terminal: $ java --version openjdk 10 2018-03-20 OpenJDK Runtime Environment 18.3 (build 10+46) OpenJDK 64-Bit Server VM 18.3 (build 10+46, mixed mode) And $ javac --version javac 10
Success story sharing
sudo update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/java-10-openjdk-amd64/bin/jar 1
for thejar
command!Package 'oracle-java10-installer' has no installation candidate