Не удается установить Oracle JDK 9

17

Я удалил пакеты jdk и теперь не могу их установить. Мне удалось установить oracle-java7-installer и oracle-java8-installer, но не могу установить oracle-java9-installer. Кажется, что мой компьютер пытается загрузить неправильную версию oracle-java9-installer 177, когда версия, которую я смогу загрузить, - 178.

$ wget http://download.java.net/java/jdk9/archive/178/binaries/jdk-9+178_linux-x64_bin.tar.gz
--2017-07-21 11:00:02--  http://download.java.net/java/jdk9/archive/178/binaries/jdk-9+178_linux-x64_bin.tar.gz
Connecting to 10.144.1.10:8080... connected.
Proxy request sent, awaiting response... 200 OK
Length: 293348142 (280M) [application/x-gzip]
Saving to: 'jdk-9+178_linux-x64_bin.tar.gz'

jdk-9+178_linux-x64_bin.tar.gz     1%[>                                                          ]   5.42M  5.04MB/s               ^C

$ wget http://download.java.net/java/jdk9/archive/177/binaries/jdk-9+177_linux-x64_bin.tar.gz
--2017-07-21 11:00:16--  http://download.java.net/java/jdk9/archive/177/binaries/jdk-9+177_linux-x64_bin.tar.gz
Connecting to 10.144.1.10:8080... connected.
Proxy request sent, awaiting response... 404 Not Found
2017-07-21 11:00:17 ERROR 404: Not Found.

Вы можете помочь? apt-get пытается установить Oracle JDK 9.

Я запускаю Ubuntu 16.04 на виртуальной машине, размещенной в win7

Полное сообщение об ошибке:

sudo apt-get install oracle-java9-installer
Reading package lists... Done
Building dependency tree       
Reading state information... Done
oracle-java9-installer is already the newest version (9b177-1~webupd8~0).
0 upgraded, 0 newly installed, 0 to remove and 147 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] Y
Setting up oracle-java9-installer (9b177-1~webupd8~0) ...
Using wget settings from /var/cache/oracle-jdk9-installer/wgetrc
Downloading Oracle Java 9...
--2017-07-21 10:54:11--  http://download.java.net/java/jdk9/archive/177/binaries/jdk-9+177_linux-x64_bin.tar.gz
Connecting to 10.144.1.10:8080... connected.
Proxy request sent, awaiting response... 404 Not Found
2017-07-21 10:54:13 ERROR 404: Not Found.

download failed
Oracle JDK 9 is NOT installed.
dpkg: error processing package oracle-java9-installer (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 oracle-java9-installerE: Sub-process /usr/bin/dpkg returned an error code (1)
    
задан Akseli Arvaja 21.07.2017 в 08:06
источник

4 ответа

13

В версии выпуска JDK версии GA:

cd /var/lib/dpkg/info
sudo sed -i 's|SHA256SUM_TGZ="2ef49c97ddcd5e0de20226eea4cca7b0d7de63ddec80eff8291513f6474ca0dc"|SHA256SUM_TGZ="1c6d783a54fcc0673ed1f8c5e8650b1d8977ca3e856a03fba0090198e0f16f6d"|' oracle-java9-installer.*
sudo sed -i 's|JAVA_VERSION_MINOR=181|JAVA_VERSION_MINOR=181|' oracle-java9-installer.*
sudo sed -i 's|FILENAME=jdk-${JAVA_VERSION_MAJOR}+${JAVA_VERSION_MINOR}_linux-${dld}_bin.tar.gz|FILENAME=jdk-${JAVA_VERSION_MAJOR}_linux-${dld}_bin.tar.gz|' oracle-java9-installer.*
sudo sed -i 's|PARTNER_URL=http://download.java.net/java/jdk${JAVA_VERSION_MAJOR}/archive/${JAVA_VERSION_MINOR}/binaries/$FILENAME|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/${JAVA_VERSION_MAJOR}+${JAVA_VERSION_MINOR}/$FILENAME|' oracle-java9-installer.*
    
ответ дан eitch 22.09.2017 в 07:58
источник
10

Я только что испытал ту же проблему и сделал следующее:

  1. cd /var/lib/dpkg/info/
  2. во всех файлах oracle-java9-installer.* изменить номера версий 177- > 178 и SHA256SUM_TGZ на то, что вы видите на официальном сайте.
  3. sudo apt-get install oracle-java9-installer

Я знаю, что это грязный и неправильный способ, но мне не удалось найти альтернативы

    
ответ дан Olga Zolotareva 21.07.2017 в 11:47
10

Предпочитаете решение друга

sudo apt-get install oracle-java9-installer
cd /var/lib/dpkg/info
sudo sed -i 's/=177/=179/' oracle-java9-installer.*
sudo sed -i 's/SHA256SUM_TGZ="a6905f3a4245a071880e1793b8d3d6100ef7b171ea1d6ebfe6312c25c2fca8bb"/SHA256SUM_TGZ="06fe58dfa50c4f6ca21dc1d475f16cd9e58db36b1d98582091d7ff9005dda7a7"/' oracle-java9-installer.*
sudo apt-get install oracle-java9-installer
    
ответ дан oualid-hack alger 30.07.2017 в 04:40
8

Последняя версия установщика, 9.0.1-1 ~ webupd8 ~ 0, теперь функционирует правильно.

Предыдущие ответы не работают для версии 9b181-1 ~ webupd8 ~ 2 установщика и некоторых предыдущих версий.

Примечание. Теперь версия JDK составляет 9.0.1, а не 9 (бета), как ожидал этот установщик. Он был устаревшим, загрузки были (повторно) перемещены также, поэтому он даже не мог установить старую бета-версию.

Сработало следующее:

sudo apt-get install oracle-java9-installer

Вы можете использовать ls oracle-java9* для просмотра соответствующих файлов в этом каталоге:

cd /var/lib/dpkg/info

Исправить неправильную сумму, в oracle-java9-installer.config на самом деле:

sudo sed -i 's|SHA256SUM_TGZ="2ef49c97ddcd5e0de20226eea4cca7b0d7de63ddec80eff8291513f6474ca0dc"|SHA256SUM_TGZ="2cdaf0ff92d0829b510edd883a4ac8322c02f2fc1beae95d048b6716076bc014"|' oracle-java9-installer.*

Исправьте вторую неверную сумму, в oracle-java9-installer.postinst :

sudo sed -i 's|SHA256SUM_TGZ="1c6d783a54fcc0673ed1f8c5e8650b1d8977ca3e856a03fba0090198e0f16f6d"|SHA256SUM_TGZ="2cdaf0ff92d0829b510edd883a4ac8322c02f2fc1beae95d048b6716076bc014"|' oracle-java9-installer.*

Далее:

sudo sed -i 's|JAVA_VERSION_MAJOR=9|JAVA_VERSION_MAJOR=9.0.1|' oracle-java9-installer.*
sudo sed -i 's|JAVA_VERSION_MINOR=181|JAVA_VERSION_MINOR=11|' oracle-java9-installer.*
sudo sed -i 's|J_DIR=jdk-9|J_DIR=jdk-9.0.1|' oracle-java9-installer.*
sudo sed -i 's|FILENAME=jdk-${JAVA_VERSION_MAJOR}+${JAVA_VERSION_MINOR}_linux-${dld}_bin.tar.gz|FILENAME=jdk-${JAVA_VERSION_MAJOR}_linux-${dld}_bin.tar.gz|' oracle-java9-installer.*
sudo sed -i 's|PARTNER_URL=http://download.java.net/java/jdk${JAVA_VERSION_MAJOR}/archive/${JAVA_VERSION_MINOR}/binaries/$FILENAME|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/${JAVA_VERSION_MAJOR}+${JAVA_VERSION_MINOR}/$FILENAME|' oracle-java9-installer.*

Затем установите еще раз:

sudo apt-get install oracle-java9-installer

Вы также можете скачать пакет java9 tgz отдельно и поместить его в /var/cache/oracle-jdk9-installer после того, как вы попытались (и не смогли) установить (он сделает каталог). После выполнения вышеуказанных исправлений он будет устанавливать из кешированной версии (сохранить резервную копию) вместо того, чтобы снова загружать.

    
ответ дан Raymond Martin 18.10.2017 в 22:03