I am attempting to install java7 in a docker image. This was working till a few days ago. Commands are:
apt-get --fix-missing update apt-get -y upgrade apt-get -y install software-properties-common add-apt-repository ppa:webupd8team/java apt-get -y upgrade apt-get -y update echo oracle-java7-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections apt-get install -y oracle-java7-installerOutput is:
Setting up oracle-java7-installer (7u80+7u60arm-0~webupd8~1) ... debconf: unable to initialize frontend: Dialog debconf: (TERM is not set, so the dialog frontend is not usable.) debconf: falling back to frontend: Readline debconf: unable to initialize frontend: Readline debconf: (This frontend requires a controlling tty.) debconf: falling back to frontend: Teletype Downloading Oracle Java 7... --2017-05-29 16:54:29-- Resolving download.oracle.com (download.oracle.com)... 104.96.220.162, 104.96.220.106 Connecting to download.oracle.com (download.oracle.com)|104.96.220.162|:80... connected. HTTP request sent, awaiting response... 302 Moved Temporarily Location: (REMOVING H-T-T-P-S BECAUSE I DON'T HAVE ENOUGH REP POINTS):// [following] --2017-05-29 16:54:29-- (REMOVING H-T-T-P-S BECAUSE I DON'T HAVE ENOUGH REP POINTS):// Resolving edelivery.oracle.com (edelivery.oracle.com)... 23.196.115.62, 2600:1408:10:184::2d3e, 2600:1408:10:185::2d3e Connecting to edelivery.oracle.com (edelivery.oracle.com)|23.196.115.62|:443... connected. HTTP request sent, awaiting response... 302 Moved Temporarily Location: (REMOVING H-T-T-P BECAUSE I DON'T HAVE ENOUGH REP POINTS)// [following] --2017-05-29 16:54:29-- 0452116ca Connecting to download.oracle.com (download.oracle.com)|104.96.220.162|:80... connected. HTTP request sent, awaiting response... 404 Not Found 2017-05-29 16:54:31 ERROR 404: Not Found. download failed Oracle JDK 7 is NOT installed. dpkg: error processing package oracle-java7-installer (--configure): subprocess installed post-installation script returned error exit status 1 Setting up gsfonts (1:8.11+urwcyr1.0.7~pre44-4.2ubuntu1) ... Setting up x11-common (1:7.7+1ubuntu8.1) ... debconf: unable to initialize frontend: Dialog debconf: (TERM is not set, so the dialog frontend is not usable.) debconf: falling back to frontend: Readline debconf: unable to initialize frontend: Readline debconf: (This frontend requires a controlling tty.) debconf: falling back to frontend: Teletype invoke-rc.d: policy-rc.d denied execution of start. Processing triggers for ureadahead (0.100.0-16) ... Setting up xfonts-encodings (1:1.0.4-1ubuntu1) ... Setting up xfonts-utils (1:7.7+1) ... Setting up gsfonts-x11 (0.22) ... Processing triggers for libc-bin (2.19-0ubuntu6.9) ... Errors were encountered while processing: oracle-java7-installer E: Sub-process /usr/bin/dpkg returned an error code (1) The command '/bin/sh -c apt-get install -y oracle-java7-installer' returned a non-zero code: 100 5 4 Answers
Since Oracle has moved the download link and requires login credentials to download older versions of java, follow the following steps to install java 7:
1) Download latest java version from . You will need to login.
2) Delete jdk-7uXX-linux-x64.tar.gz from /var/cache/oracle-jdk7-installer/ where XX is the version number.
3) Move the downloaded version into /var/cache/oracle-jdk7-installer/ using the following command
sudo mv jdk-7u(downloadedversion)-linux-x64.tar.gz /var/cache/oracle-jdk7-installer/
4) Now run the following command
sudo apt-get install oracle-java7-installer 7 The cause of the error is Oracle's removal of the binaries from their site. Though the versions were deprecated a while ago, the binaries were still there for download until recently. But they removed it now.
This is explained in webupd8's site on June 2,2017. Oracle's download page says
Updates for Java SE 7 released after April 2015, and updates for Java SE 6 released after April 2013 are only available to Oracle Customers through My Oracle Support (requires support login).
Java SE Advanced offers users commercial features, access to critical bug fixes, security fixes, and general maintenance".
Check the full details here .
2As mentioned in other answers Oracle requires a developer account or a support contract to download anything but the latest version of the JRE/JDK from their site since they typically do a release to address severe CVE (vulnerabilities).
This repository has a script that allows you to download the latest or older versions based on the parameters and environment variables you set.
Figured I'd post here in case anyone ran into this issue with Oracle moving from Java 181 to 191 yesterday. If you're getting this issue with Java 8 please look here for the fix until the new Java 8 installer has been updated for Ubuntu.
Here is the fix for 181 to 191:
cd /var/lib/dpkg/info
sudo sed -i 's|JAVA_VERSION=8u181|JAVA_VERSION=8u191|' oracle-java8-installer.*
sudo sed -i 's|PARTNER_URL= oracle-java8-installer.*
sudo sed -i 's|SHA256SUM_TGZ="1845567095bfbfebd42ed0d09397939796d05456290fb20a83c476ba09f991d3"|SHA256SUM_TGZ="53c29507e2405a7ffdbba627e6d64856089b094867479edc5ede4105c1da0d65"|' oracle-java8-installer.*
sudo sed -i 's|J_DIR=jdk1.8.0_181|J_DIR=jdk1.8.0_191|' oracle-java8-installer.*