Can't install Oracle Java 8 in Ubuntu 16.04

I haven’t installed anything strange in my Ubuntu 16.04 Server. I did some tests in my Ubuntu 16.04 Desktop VM some hours before and installation was successful, but in my dedicated it seems something is wrong.

Explanation:

  1. I reinstalled the OS on my dedicated from Windows to Linux (Ubuntu Server 16.04)

  2. Just open SSH first time, I go for

    sudo apt-get update
    sudo apt-get upgrade
    
  3. Then I tried to install Oracle Java 8

    $ sudo add-apt-repository ppa:webupd8team/java
     Oracle Java (JDK) Installer (automatically downloads and installs Oracle JDK7 /
    
    Important -> Why Oracle Java 7 And 6 Installers No Longer Work: http://www.webup
    
    Ubuntu 16.10 Yakkety Yak is no longer supported by Canonical (and thus, Launchpad)
    
    More info (and Ubuntu installation instructions):
    - for Oracle Java 7: http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in
    - for Oracle Java 8: http://www.webupd8.org/2012/09/install-oracle-java-8-in-ubu
    
    Debian installation instructions:
    - Oracle Java 7: http://www.webupd8.org/2012/06/how-to-install-oracle-java-7-in-
    - Oracle Java 8: http://www.webupd8.org/2014/03/how-to-install-oracle-java-8-in-
    
    Oracle Java 9 (for both Ubuntu and Debian): http://www.webupd8.org/2015/02/insta
    
    Oracle JDK 9 is now considered stable. There are currently only 64bit builds (nodownloads/index.html )
     More info: https://launchpad.net/~webupd8team/+archive/ubuntu/java
    Press [ENTER] to continue or ctrl-c to cancel adding it
    
    gpg: keyring `/tmp/tmp64tvseig/secring.gpg' created
    gpg: keyring `/tmp/tmp64tvseig/pubring.gpg' created
    gpg: requesting key EEA14886 from hkp server keyserver.ubuntu.com
    gpg: /tmp/tmp64tvseig/trustdb.gpg: trustdb created
    gpg: key EEA14886: public key "Launchpad VLC" imported
    gpg: no ultimately trusted keys found
    gpg: Total number processed: 1
    gpg:               imported: 1  (RSA: 1)
    

    then

    $ sudo apt update; sudo apt install oracle-java8-installer
    sudo apt update; sudo apt install oracle-
    Hit:1 http://mirror.hetzner.de/ubuntu/packages xenial InRelease
    Hit:2 http://mirror.hetzner.de/ubuntu/packages xenial-backports InRelease
    Hit:3 http://mirror.hetzner.de/ubuntu/packages xenial-updates InRelease
    Hit:4 http://mirror.hetzner.de/ubuntu/security xenial-security InRelease
    Get:5 http://ppa.launchpad.net/webupd8team/java/ubuntu xenial InRelease [17.5 kB
    Hit:6 http://de.archive.ubuntu.com/ubuntu xenial InRelease
    Hit:7 http://de.archive.ubuntu.com/ubuntu xenial-updates InRelease
    Hit:8 http://de.archive.ubuntu.com/ubuntu xenial-backports InRelease
    Get:9 http://security.ubuntu.com/ubuntu xenial-security InRelease [102 kB]
    Get:10 http://ppa.launchpad.net/webupd8team/java/ubuntu xenial/main amd64 Packag
    Get:11 http://ppa.launchpad.net/webupd8team/java/ubuntu xenial/main i386 Package
    Get:12 http://ppa.launchpad.net/webupd8team/java/ubuntu xenial/main Translation-
    Fetched 126 kB in 0s (175 kB/s)
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    2 packages can be upgraded. Run 'apt list --upgradable' to see them.
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    The following additional packages will be installed:
      binutils gsfonts gsfonts-x11 java-common libfontenc1 libxfont1 oracle-java8-se
    Suggested packages:
      binutils-doc binfmt-support visualvm ttf-baekmuk | ttf-unfonts | ttf-unfonts-c
      ttf-arphic-uming firefox | firefox-2 | iceweasel | mozilla-firefox | iceape-br
      | midbrowser | moblin-web-browser | xulrunner | xulrunner-1.9 | konqueror | ch
    The following NEW packages will be installed:
      binutils gsfonts gsfonts-x11 java-common libfontenc1 libxfont1 oracle-java8-in
    0 upgraded, 11 newly installed, 0 to remove and 2 not upgraded.
    Need to get 6,519 kB of archives.
    After this operation, 20.5 MB of additional disk space will be used.
    Do you want to continue? [Y/n] y
    Get:1 http://mirror.hetzner.de/ubuntu/packages xenial-updates/main amd64 binutil
    Get:2 http://ppa.launchpad.net/webupd8team/java/ubuntu xenial/main amd64 oracle-
    Get:3 http://ppa.launchpad.net/webupd8team/java/ubuntu xenial/main amd64 oracle-
    Get:4 http://mirror.hetzner.de/ubuntu/packages xenial/main amd64 java-common all
    Get:5 http://mirror.hetzner.de/ubuntu/packages xenial/main amd64 gsfonts all 1:8
    Get:6 http://mirror.hetzner.de/ubuntu/packages xenial/main amd64 libfontenc1 amd
    Get:7 http://mirror.hetzner.de/ubuntu/packages xenial-updates/main amd64 libxfon
    Get:8 http://mirror.hetzner.de/ubuntu/packages xenial/main amd64 x11-common all
    Get:9 http://mirror.hetzner.de/ubuntu/packages xenial/main amd64 xfonts-encoding
    Get:10 http://mirror.hetzner.de/ubuntu/packages xenial-updates/main amd64 xfonts
    Get:11 http://mirror.hetzner.de/ubuntu/packages xenial/universe amd64 gsfonts-x1
    Fetched 6,519 kB in 0s (24.8 MB/s)
    Preconfiguring packages ...
    Selecting previously unselected package binutils.
    (Reading database ... 57317 files and directories currently installed.)
    Preparing to unpack .../binutils_2.26.1-1ubuntu1~16.04.5_amd64.deb ...
    Unpacking binutils (2.26.1-1ubuntu1~16.04.5) ...
    Selecting previously unselected package java-common.
    Preparing to unpack .../java-common_0.56ubuntu2_all.deb ...
    Unpacking java-common (0.56ubuntu2) ...
    Processing triggers for libc-bin (2.23-0ubuntu9) ...
    Processing triggers for man-db (2.7.5-1) ...
    Setting up binutils (2.26.1-1ubuntu1~16.04.5) ...
    Processing triggers for libc-bin (2.23-0ubuntu9) ...
    Selecting previously unselected package oracle-java8-installer.
    (Reading database ... 57533 files and directories currently installed.)
    Preparing to unpack .../oracle-java8-installer_8u144-1~webupd8~0_all.deb ...
    Unpacking oracle-java8-installer (8u144-1~webupd8~0) ...
    Processing triggers for shared-mime-info (1.5-2ubuntu0.1) ...
    Processing triggers for mime-support (3.59ubuntu1) ...
    Setting up java-common (0.56ubuntu2) ...
    Setting up oracle-java8-installer (8u144-1~webupd8~0) ...
    No /var/cache/oracle-jdk8-installer/wgetrc file found.
    Creating /var/cache/oracle-jdk8-installer/wgetrc and
    using default oracle-java8-installer wgetrc settings for it.
    Downloading Oracle Java 8...
    --2017-10-18 19:34:47--  http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.tar.gz
    Resolving download.oracle.com (download.oracle.com)... 2.20.189.226, 2.20.190.214
    Connecting to download.oracle.com (download.oracle.com)|2.20.189.226|:80... connected.
    HTTP request sent, awaiting response... 302 Moved Temporarily
    Location: https://edelivery.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.tar.gz [following]
    --2017-10-18 19:34:47--  https://edelivery.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.tar.gz
    Resolving edelivery.oracle.com (edelivery.oracle.com)... 2a02:26f0:78:18e::2d3e, 2a02:26f0:78:196::2d3e, 104.108.49.101
    Connecting to edelivery.oracle.com (edelivery.oracle.com)|2a02:26f0:78:18e::2d3e|:443... connected.
    HTTP request sent, awaiting response... 302 Moved Temporarily
    Location: http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.tar.gz?AuthParam=1508348207_951d79ba516ffabdf4dcbded7e76c54f [following]
    --2017-10-18 19:34:47--  http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.tar.gz?AuthParam=1508348207_951d79ba516ffabdf4dcbded7e76c54f
    Connecting to download.oracle.com (download.oracle.com)|2.20.189.226|:80... connected.
    HTTP request sent, awaiting response... 404 Not Found
    2017-10-18 19:34:48 ERROR 404: Not Found.
    
    download failed
    **Oracle JDK 8 is NOT installed.
    dpkg: error processing package oracle-java8-installer (--configure):
     subprocess installed post-installation script returned error exit status 1
    Errors were encountered while processing:
     oracle-java8-installer
    E: Sub-process /usr/bin/dpkg returned an error code (1)**
    

    These output says at the end:

    **Oracle JDK 8 is NOT installed.
    dpkg: error processing package oracle-java8-installer (--configure):
     subprocess installed post-installation script returned error exit status 1
    Errors were encountered while processing:
     oracle-java8-installer
    E: Sub-process /usr/bin/dpkg returned an error code (1)**
    

Maybe I should try to install Oracle JDK 8?


Solution 1:

This problem occurred again because version 161 has been archived. This version is referenced currently by the PPA. You can use the following commands to update the reference to 172 (171+bug fixes, refer Oracle's Java Downloads1):

cd /var/lib/dpkg/info

sudo sed -i 's|JAVA_VERSION=8u161|JAVA_VERSION=8u172|' oracle-java8-installer.*
sudo sed -i 's|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/8u172-b11/a58eab1ec242421181065cdc37240b08/|' oracle-java8-installer.*
sudo sed -i 's|SHA256SUM_TGZ="6dbc56a0e3310b69e91bb64db63a485bd7b6a8083f08e48047276380a0e2021e"|SHA256SUM_TGZ="28a00b9400b6913563553e09e8024c286b506d8523334c93ddec6c9ec7e9d346"|' oracle-java8-installer.*
sudo sed -i 's|J_DIR=jdk1.8.0_161|J_DIR=jdk1.8.0_172|' oracle-java8-installer.*

and then run

sudo apt-get install oracle-java8-installer

1 Java SE 8u172 is a patch-set update, including all of 8u171 plus additional bug fixes (described in the release notes).

Solution 2:

According to this thread on Ubuntu Forums it seems to be a problem on WebUpd8's side.

Until they fix it, install it manually:

https://docs.oracle.com/javase/8/docs/technotes/guides/install/linux_jdk.html

Solution 3:

Looks like the problem is that the PPA is trying to download java8U144 which is now an archived version so the URL is different (accessible via http://download.oracle.com/otn/ not http://download.oracle.com/otn-pub/)

The only versions that aren't archived and accessible via otn-pub are 151 and 152.

You can use this temporary workaround, until they fix this on their side.

switch to dpkg directory

cd /var/lib/dpkg/info

Then run the following commands :-

sudo sed -i 's|JAVA_VERSION=8u144|JAVA_VERSION=8u152|' oracle-java8-installer.*
sudo sed -i 's|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/8u152-b16/aa0333dd3019491ca4f6ddbe78cdb6d0/|' oracle-java8-installer.*
sudo sed -i 's|SHA256SUM_TGZ="e8a341ce566f32c3d06f6d0f0eeea9a0f434f538d22af949ae58bc86f2eeaae4"|SHA256SUM_TGZ="218b3b340c3f6d05d940b817d0270dfe0cfd657a636bad074dcabe0c111961bf"|' oracle-java8-installer.*
sudo sed -i 's|J_DIR=jdk1.8.0_144|J_DIR=jdk1.8.0_152|' oracle-java8-installer.*